CSS TutorialLesson #77

Float Examples

With the `float` property, it is easy to float boxes of content side by side:

Create Equal Width Boxes

With the float property, it is easy to float boxes of content side by side:

Box 1

Box 2

Box 1

Box 2

Box 3

Example

Example Code

css
Try it Yourself
* {
  box-sizing: border-box;
}

.box {
  float: left;
  width: 33.33%; /* three
  boxes (use 25% for four, and 50% for two, etc) */
  padding:
  50px; /* if you want space between the images */
}

What is box-sizing?

You can easily create three floating boxes side by side. However, when you add something that enlarges the width of each box (e.g. padding or borders), the box can break. The box-sizing property allows us to include the padding and border in the box's total width (and height), making sure that the padding stays inside of the box and that it does not break.

You can read more about the box-sizing property in our CSS Box Sizing Chapter.


Images Side By Side

<img src="img_5terre.jpg" alt="Italy" style="width:100%">

<img src="img_forest.jpg" alt="Forest" style="width:100%">

<img src="img_mountains.jpg" alt="Mountains" style="width:100%">

The grid of boxes can also be used to display images side by side:

Example

Example Code

css
Try it Yourself
.img-container {
  float: left;
  width: 33.33%; /* three
  containers (use 25% for four, and 50% for two, etc) */
  padding:
  5px; /* if you want space between the images */
}

Create Boxes With Equal Heights

In the previous example, you learned how to float boxes side by side with an equal width. However, it is not easy to create floating boxes with equal heights. A quick fix however, is to set a fixed height, like in the example below:

Box 1

Some content, some content, some content

Box 2

Some content, some content, some content

Some content, some content, some content

Some content, some content, some content

Example

Example Code

css
Try it Yourself
.box {
  height: 500px;
}

However, this is not very flexible. It is ok if you can guarantee that the boxes will always have the same amount of content in them. But many times, the content is not the same. If you try the example above on a mobile phone, you will see that the second box's content will be displayed outside of the box. This is where CSS Flexbox comes in handy - as it can automatically stretch boxes to be as long as the longest box:

Example

Using Flexbox to create flexible boxes:

Box 1 - This is some text to make sure that the content gets really tall. This is some text to make sure that the content gets really tall. This is some text to make sure that the content gets really tall. Box 2 - My height will follow Box 1.

Tip: You can read more about the Flexbox Layout Module in our CSS Flexbox Chapter.


Navigation Menu

You can also use float with a list of hyperlinks to create a horizontal menu:

Example

  • Home
  • News
  • Contact
  • About

All CSS Float Properties

PropertyDescription
box-sizingDefines how the width and height of an element are calculated: should they include padding and borders, or not
clearSpecifies what should happen with the element that is next to a floating element
floatSpecifies whether an element should float to the left, right, or not at all

Interactive Code Examples

CSS Example 1

css
Try it Yourself
Interactive runnable CSS example from EA Academy.
Live Output Preview:

CSS Example 2

css
Try it Yourself
Interactive runnable CSS example from EA Academy.
Live Output Preview:

CSS Example 3

css
Try it Yourself
Interactive runnable CSS example from EA Academy.
Live Output Preview: