CSS
CSS float Property: What It Is and How to Use It
The float
property in CSS has played a major role in web design since the early days of the internet. Originally created to let text wrap around images, it evolved into a layout tool—though modern CSS has largely replaced it with Flexbox and Grid. Still, float
remains useful in many scenarios, and understanding it helps you write cleaner, more effective code.
In this article, we’ll cover:
- What the
float
property does - Syntax and available values
- Real-world examples
- How to clear floats
- When (and when not) to use it
📌 What Does float
Do?
The float
property places an element to the left or right of its container, allowing text and inline content to wrap around it.
🔧 Syntax:
.element {
float: left | right | none | inherit;
}
🔍 Property Values
Value | Description |
---|---|
left | Floats the element to the left |
right | Floats the element to the right |
none | Removes float; default behavior |
inherit | Inherits the float value from its parent |
🧪 Example: Image with Wrapped Text
<img src="image.jpg" class="float-image">
<p>This text wraps around the image.</p>
.float-image {
float: left;
margin: 0 15px 15px 0;
}
✅ Result: The image floats to the left, and the paragraph text wraps to the right of it.
🛠️ Float in Layouts (Old-School Approach)
Before Flexbox and Grid, float
was widely used for creating multi-column layouts.
<div class="column left"></div>
<div class="column right"></div>
.left {
float: left;
width: 50%;
}
.right {
float: right;
width: 50%;
}
⚠️ While this works, it’s now considered outdated for layout purposes. Use Flexbox or CSS Grid instead.
🧼 Clearing Floats
One of the biggest headaches with float
is that it can break container layouts. If all child elements are floated, their parent may collapse to zero height.
✅ Solution: Clearfix Hack
.clearfix::after {
content: "";
display: table;
clear: both;
}
Then apply .clearfix
to the parent container:
<div class="container clearfix">
<div class="box left"></div>
<div class="box right"></div>
</div>
⚠️ When Not to Use Float
Avoid using float
for layout unless absolutely necessary. Instead:
- ✅ Use Flexbox for flexible row/column layouts
- ✅ Use Grid for complex, multi-dimensional designs
- ✅ Use
float
for wrapping text around media, such as images or videos
📝 Conclusion
The CSS float
property allows you to push elements to the left or right and let surrounding content flow around them. It was once a go-to layout tool but is now primarily used for media-wrapping and specific design tweaks.
By understanding how float
works—and how to clear it—you’ll write more robust and maintainable CSS, even if your go-to tools are now Flexbox and Grid.
🔑 Quick Recap
Use Case | Should You Use float ? |
---|---|
Wrapping text around images | ✅ Yes |
Page layout (columns, rows) | ❌ Use Flexbox/Grid |
Floating sidebar or media | ✅ With clearfix |