search
HomeWeb Front-endCSS TutorialIs CSS float deprecated?

Is CSS float deprecated?

An interesting question has emerged in work recently: Should we also use the CSS float attribute after having CSS Grid and Flexbox?

Short answer

No! Or, in most cases, it is not used. Nowadays, I will only use it for text-surrounding pictures and will avoid using it entirely for layouts.

Longer, more annoying answers

Before Flexbox and Grid emerge, we have to use the CSS float property to create grids and layouts. In fact, this is the first attribute I came into contact with when learning web design. On a hot summer afternoon, I opened a book called "Designing with Web Standards" by Jeffrey Zeldman and moved a tiny red div with float: right . This is simply magic! There is a huge power in the float.

Moving elements on the screen is so simple that I now wonder how many designers have fallen in love with web design just because of the simplicity of this mobile element.

However, building complex layouts with float has always been a stopgap solution: it is actually designed to just keep text around the picture.

 <code>img { width: 150px; float: left; }</code>

The float problem begins when we try to build large layouts and magazine-style grids. But then we had no choice but to do so.

One problem with the float attribute is that you have to wrap the floating element with something called clearfix, which looks like this:

<code><div>
  <div>Column</div>
  <div>Column</div>
  <div>Column</div>
</div></code>
<code>clearfix:after { content: ""; display: table; clear: both; }</code>

Jay Hoffman has described the clearfix hack before:

Clearfix, for those who don't know, this is a CSS hack, which solves a persistent bug that occurs when two floating elements are stacked side by side. When elements are aligned this way, the height of the parent container ends up becoming 0, which can easily break the layout. You might just want to place the sidebar to the left of the main content block, but the result is that the two elements overlap and collapse each other. More complicated is that this bug is inconsistent in different browsers. clearfix was invented to solve all these problems.

After that, the situation began to change slowly. Back in 2017, Rachel Andrew explained how the browser can handle clearfix problems without any hack at all. We only need the following CSS to achieve the same fix:

 <code>.container { display: flow-root; }</code>

Strangely, I didn't know the existence of flow-root value until three minutes before I typed. But this may prove what I'm going to say next: With CSS Grid and Flexbox, we don't actually need floats at all. This property was originally designed with only one purpose: to allow text to surround the picture. But now, with Grid and Flexbox, we have powerful features that can do the real layout.

Go back to the discussion I had at work. Some people say we should go back to the codebase and delete all instances of float because it is very old code and we can easily replace it with Flexbox or Grid. But here, I want to say, "Wait!" I don't think retaining the float attribute in some places in the code base does much damage - it's not the radioactive code that will cause the problem.

So, should we use CSS float for any other purpose besides having the text wrap around the image? No. But should we clear all CSS float declarations on the network right away, because it is not pure and not the "correct" approach? Nor either.

The beauty of the network is that old code should not break things. Just ask Chris. A website that doesn't use the most dazzling CSS attributes or the coolest tricks is not useless or bad. We just replaced float with better alternatives. I think this is a good lesson that these CSS properties may be there forever because they still have applicable use cases in modern web design.

This is very good.

The above is the detailed content of Is CSS float deprecated?. For more information, please follow other related articles on the PHP Chinese website!

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
CSS Animations: Is it hard to create them?CSS Animations: Is it hard to create them?May 09, 2025 am 12:03 AM

CSSanimationsarenotinherentlyhardbutrequirepracticeandunderstandingofCSSpropertiesandtimingfunctions.1)Startwithsimpleanimationslikescalingabuttononhoverusingkeyframes.2)Useeasingfunctionslikecubic-bezierfornaturaleffects,suchasabounceanimation.3)For

@keyframes CSS: The most used tricks@keyframes CSS: The most used tricksMay 08, 2025 am 12:13 AM

@keyframesispopularduetoitsversatilityandpowerincreatingsmoothCSSanimations.Keytricksinclude:1)Definingsmoothtransitionsbetweenstates,2)Animatingmultiplepropertiessimultaneously,3)Usingvendorprefixesforbrowsercompatibility,4)CombiningwithJavaScriptfo

CSS Counters: A Comprehensive Guide to Automatic NumberingCSS Counters: A Comprehensive Guide to Automatic NumberingMay 07, 2025 pm 03:45 PM

CSSCountersareusedtomanageautomaticnumberinginwebdesigns.1)Theycanbeusedfortablesofcontents,listitems,andcustomnumbering.2)Advancedusesincludenestednumberingsystems.3)Challengesincludebrowsercompatibilityandperformanceissues.4)Creativeusesinvolvecust

Modern Scroll Shadows Using Scroll-Driven AnimationsModern Scroll Shadows Using Scroll-Driven AnimationsMay 07, 2025 am 10:34 AM

Using scroll shadows, especially for mobile devices, is a subtle bit of UX that Chris has covered before. Geoff covered a newer approach that uses the animation-timeline property. Here’s yet another way.

Revisiting Image MapsRevisiting Image MapsMay 07, 2025 am 09:40 AM

Let’s run through a quick refresher. Image maps date all the way back to HTML 3.2, where, first, server-side maps and then client-side maps defined clickable regions over an image using map and area elements.

State of Devs: A Survey for Every DeveloperState of Devs: A Survey for Every DeveloperMay 07, 2025 am 09:30 AM

The State of Devs survey is now open to participation, and unlike previous surveys it covers everything except code: career, workplace, but also health, hobbies, and more. 

What is CSS Grid?What is CSS Grid?Apr 30, 2025 pm 03:21 PM

CSS Grid is a powerful tool for creating complex, responsive web layouts. It simplifies design, improves accessibility, and offers more control than older methods.

What is CSS flexbox?What is CSS flexbox?Apr 30, 2025 pm 03:20 PM

Article discusses CSS Flexbox, a layout method for efficient alignment and distribution of space in responsive designs. It explains Flexbox usage, compares it with CSS Grid, and details browser support.

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

SublimeText3 Linux new version

SublimeText3 Linux new version

SublimeText3 Linux latest version

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Powerful PHP integrated development environment

SublimeText3 English version

SublimeText3 English version

Recommended: Win version, supports code prompts!

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.