bugl
bugl
HomeLearnPatternsPathsSearchPremium
HomeLearnPatternsPaths
Learn/HTML/HTML Foundations
HTML•HTML Foundations

HTML Div Element

The <div> element is used as a container for other HTML elements.

The <div> Element

The <div> element is by default a block element, meaning that it takes all available width, and comes with line breaks before and after.

Example

Formatted code
Lorem Ipsum <div>I am a div</div>
dolor sit amet.

Live preview

The <div> element has no required attributes, but style , class and id are common.

<div> as a container

The <div> element is often used to group sections of a web page together.

Example

Formatted code
<div>

   <h2>London</h2>
  <p>London is the capital city of England.</p>

  <p>London has over 9 million inhabitants.</p>

 </div>

Live preview

Center align a <div> element

If you have a <div> element that is not 100% wide, and you want to center-align it, set the CSS margin property to auto .

Example

Formatted code
<style>
div {
  width:300px;
  margin:auto;
}

  </style>

Live preview

Multiple <div> elements

You can have many <div> containers on the same page.

Example

Formatted code
<div>

   <h2>London</h2>
  <p>London is the capital city of England.</p>

  <p>London has over 9 million inhabitants.</p>

 </div>
<div>

   <h2>Oslo</h2>
  <p>Oslo is the capital city of
  Norway.</p>

  <p>Oslo has over 700,000 inhabitants.</p>

 </div>
<div>

   <h2>Rome</h2>
  <p>Rome is the capital city of
  Italy.</p>

  <p>Rome has over 4 million inhabitants.</p>

 </div>

Live preview

Aligning <div> elements side by side

When building web pages, you often want to have two or more <div> elements side by side, like this:

London

London is the capital city of England.

London has over 9 million inhabitants.

Oslo

Oslo is the capital city of Norway.

Oslo has over 700,000 inhabitants.

Rome

Rome is the capital city of Italy.

Rome has over 4 million inhabitants.

There are different methods for aligning elements side by side, all include some CSS styling. We will look at the most common methods:

Float

The CSS float property was not originally meant to align <div> elements side-by-side, but has been used for this purpose for many years.

The CSS float property is used for positioning and formatting content and allows elements to be positioned horizontally, rather than vertically.

Example

Formatted code
<style>
.mycontainer {
  width:100%;
  overflow:auto;

  }
.mycontainer div {
  width:33%;
  float:left;
}
</style>

Live preview

Learn more about float in our CSS float tutorial .

Inline-block

If you change the <div> element's display property from block to inline-block , the <div> elements will no longer add a line break before and after, and will be displayed side by side instead of on top of each other.

Example

Formatted code
<style>
div {
  width: 30%;
  display:
  inline-block;
}
</style>

Live preview

Flex

The CSS Flexbox Layout Module was introduced to make it easier to design flexible responsive layout structure without using float or positioning.

To make the CSS flex method work, surround the <div> elements with another <div> element and give it the status as a flex container.

Example

Formatted code
<style>
.mycontainer {
  display: flex;
}
.mycontainer
  > div {
  width:33%;
}
</style>

Live preview

Learn more about flex in our CSS flexbox tutorial .

Grid

The CSS Grid Layout Module offers a grid-based layout system, with rows and columns, making it easier to design web pages without having to use floats and positioning.

Sounds almost the same as flex, but has the ability to define more than one row and position each row individually.

The CSS grid method requires that you surround the <div> elements with another <div> element and give the status as a grid container, and you must specify the width of each column.

Example

Formatted code
<style>
.grid-container {
  display: grid;

  grid-template-columns: 33% 33% 33%;
}
</style>

Live preview

Learn more about grid in our CSS grid tutorial .

HTML Tags

TagDescription
<div>Defines a section in a document (block-level)

For a complete list of all available HTML tags, visit our HTML Tag Reference .

Previous

HTML Block and Inline Elements

Next

HTML class Attribute

This chapter

Overview
56

Lessons

191m

Read time

1. HTML Tutorial2. HTML Introduction3. HTML Editors4. HTML Elements5. HTML Attributes6. HTML Headings7. HTML Paragraphs8. HTML Styles9. HTML Text Formatting10. HTML Comments11. HTML Colors12. HTML RGB and RGBA Colors13. HTML HEX Colors14. HTML HSL and HSLA Colors15. HTML Styles - CSS16. HTML Links17. HTML Links - Different Colors18. HTML Links - Create Bookmarks19. HTML Images20. HTML Image Maps21. HTML Background Images22. HTML <picture> Element23. HTML Favicon24. HTML Page Title25. HTML Tables26. HTML Table Borders27. HTML Table Sizes28. HTML Table Headers29. HTML Table Padding & Spacing30. HTML Table Colspan & Rowspan31. HTML Table Styling32. HTML Table Colgroup33. HTML Lists34. HTML Unordered Lists35. HTML Ordered Lists36. HTML Other Lists37. HTML Block and Inline Elements38. HTML Div Element39. HTML class Attribute40. HTML id Attribute41. HTML Buttons42. HTML Iframes43. HTML JavaScript44. HTML File Paths45. HTML - The Head Element46. HTML Layout Elements and Techniques47. HTML Responsive Web Design48. HTML Computer Code Elements49. HTML Semantic Elements50. HTML Style Guide51. HTML Entities52. HTML Symbols53. Using Emojis in HTML54. HTML Encoding (Character Sets)55. HTML Uniform Resource Locators56. HTML Versus XHTML

On this page

The <div> Element<div> as a containerCenter align a <div> elementMultiple <div> elementsAligning <div> elements side by sideLondonOsloRomeFloatInline-blockFlexGridHTML Tags