CSS float


The CSS float property specifies how an element should float.

The CSS clear property specifies what elements can float beside the cleared element and on which side.

Float left
Float right




The float Property

The float property is used for positioning and formatting content e.g. let an image float left to the text in a container.

The float property can have one of the following values:

  • left - The element floats to the left of its container
  • right- The element floats to the right of its container
  • none - The element does not float (will be displayed just where it occurs in the text). This is default
  • inherit - The element inherits the float value of its parent

In its simplest use, the float property can be used to wrap text around images.


Example - float: right;

The following example specifies that an image should float to the right in a text:


                      .example-float-right {
                        float: right;
                      }
                    

                      <img src="https://mdbootstrap.com/img/Photos/Others/placeholder1.jpg" class="example-float-right" alt="mountain">
      
                      <p>Lorem ipsum dolor sit amet consectetur, adipisicing elit. Quidem, architecto officiis, repellendus
                        corporis obcaecati, et commodi quam vitae vel laudantium omnis incidunt repellat qui eveniet fugiat totam
                        modi nam vero!</p>
                

Live preview

mountain

Lorem ipsum dolor sit amet consectetur, adipisicing elit. Quidem, architecto officiis, repellendus corporis obcaecati, et commodi quam vitae vel laudantium omnis incidunt repellat qui eveniet fugiat totam modi nam vero!


Example - float: left;

The following example specifies that an image should float to the left in a text:


                      .example-float-left {
                        float: left;
                      }
                    

                      <img src="https://mdbootstrap.com/img/Photos/Others/placeholder1.jpg" class="example-float-left" alt="mountain">
      
                      <p>Lorem ipsum dolor sit amet consectetur, adipisicing elit. Quidem, architecto officiis, repellendus
                        corporis obcaecati, et commodi quam vitae vel laudantium omnis incidunt repellat qui eveniet fugiat totam
                        modi nam vero!</p>
                

Live preview

mountain

Lorem ipsum dolor sit amet consectetur, adipisicing elit. Quidem, architecto officiis, repellendus corporis obcaecati, et commodi quam vitae vel laudantium omnis incidunt repellat qui eveniet fugiat totam modi nam vero!


The clear Property

The clear property specifies what elements can float beside the cleared element and on which side.

The clear property can have one of the following values:

  • none - Allows floating elements on both sides. This is default
  • left - No floating elements allowed on the left side
  • right- No floating elements allowed on the right side
  • both - No floating elements allowed on either the left or the right side
  • inherit - The element inherits the clear value of its parent

The most common way to use the clear property is after you have used a float property on an element.

When clearing floats, you should match the clear to the float: If an element is floated to the left, then you should clear to the left. Your floated element will continue to float, but the cleared element will appear below it on the web page.

In this example, the image is taller than the element containing it, and it is floated, so it overflows outside of its container:

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus imperdiet, nulla et dictum interdum...

Add a clearfix class with overflow: auto; to the containing element, to fix this problem:

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus imperdiet, nulla et dictum interdum...

                        .example-clear-box {
                          border: 3px solid #4CAF50;
                          padding: 5px;
                        }
                        
                        .img1 {
                          float: right;
                        }
                        
                        .clearfix {
                          overflow: auto;
                        }
                        
                        .img2 {
                          float: right;
                        }
                      

                        <div class="example-clear-box">
                            <img class="img1" src="https://mdbootstrap.com/img/Photos/Others/placeholder1.jpg" width="170"
                              height="170">
                            Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus imperdiet, nulla et dictum interdum...
                          </div>
                
                          <p style="clear:right">Add a clearfix class with overflow: auto; to the containing element, to fix this
                            problem:</p>
                
                          <div class="clearfix example-clear-box">
                            <img class="img2" src="https://mdbootstrap.com/img/Photos/Others/placeholder1.jpg" width="170"
                              height="170">
                            Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus imperdiet, nulla et dictum interdum...
                          </div>
                  

Previous lesson Next lesson

Spread the word:
Do you need help? Use our support forum

About the author

User avatar
Michal Szymanski
Co-Founder at MDBootstrap & BrandFlow. Entrepreneur, web developer, UI/UX designer, marketing analyst. Dancer and nerd in one.