CSS column-count Property

Beginner
⏱️ 6 min read
📚 Updated: Jun 2026
🎯 4 Examples
Layout & Columns

What You’ll Learn

The column-count property splits content into multiple columns — like a newspaper or magazine layout — for better readability on wide screens.

01

Multi-Column

Flow text in columns.

02

Syntax

number or auto.

03

auto Default

Single column.

04

Block Elements

div, article, etc.

05

column-gap

Space between cols.

06

Responsive

Media queries.

Definition and Usage

The column-count CSS property specifies the number of columns an element should be divided into. It is part of the CSS Multi-column Layout Module, which provides a way to lay out content in multiple columns, similar to newspaper layouts.

This property is useful for creating responsive and visually appealing designs when you have a long block of text or content that should flow across columns rather than one wide paragraph.

💡
Beginner Tip

column-count flows one continuous block of content across columns. For placing separate cards in a grid, use CSS Grid or Flexbox instead.

📝 Syntax

The syntax for column-count is straightforward — apply it to any block-level container:

syntax.css
selector {
  column-count: number | auto;
}

Basic Example

column-count-3.css
.multicolumn {
  column-count: 3;
}

Syntax Rules

  • The initial value is auto (single column, no splitting).
  • Use a positive integer (2, 3, etc.) for a fixed column count.
  • Content flows top-to-bottom in the first column, then continues in the next.
  • Pair with column-gap and column-rule for spacing and dividers.
  • Use media queries to reduce columns on narrow screens.

⚡ Quick Reference

QuestionAnswer
Initial valueauto
Applies toBlock containers with flowing content
InheritedNo
AnimatableNo
Common useArticle text, long descriptions, magazine-style layouts

💎 Property Values

The column-count property accepts a column number or the keyword auto.

ValueExampleMeaning
numbercolumn-count: 3;Specifies the number of columns into which the content should be divided.
autocolumn-count: auto;The browser determines the optimal number of columns based on content and available space, or uses a single column when no other column properties are set.
auto 2 3 4

👀 Live Preview

This block uses column-count: 3 with column-gap: 1.25rem. Text flows from the first column into the second and third.

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Additional text ensures all three columns receive content in the live demo.

Examples Gallery

Try three columns, two columns with gap, responsive column counts, and column rules.

🗃 Basic Multi-Column

Start with the reference example — divide a div into three columns.

Example 1 — Three-Column Layout

Divide the content of a <div> element into three columns.

column-count-3.html
<style>
  .multicolumn {
    column-count: 3;
  }
</style>

<div class="multicolumn">
  Lorem ipsum dolor sit amet, consectetur adipiscing elit...
</div>
Try It Yourself

How It Works

The browser splits the div’s content into three equal-width columns and flows text from top to bottom in each column.

Example 2 — Two Columns with column-gap

Add spacing between columns for better readability.

column-gap.html
<style>
  .article {
    column-count: 2;
    column-gap: 2rem;
  }
</style>

<article class="article">...</article>
Try It Yourself

How It Works

column-gap adds horizontal space between columns without affecting the column count.

📱 Responsive & Styled Columns

Adapt column count for screen size and add visual dividers between columns.

Example 3 — Responsive Column Count

Use one column on mobile and three on wider screens.

column-responsive.css
.content {
  column-count: 1;
}

@media (min-width: 768px) {
  .content {
    column-count: 3;
  }
}
Try It Yourself

How It Works

A media query changes column-count from 1 to 3 when the viewport is at least 768px wide.

Example 4 — Columns with column-rule

Add a vertical divider line between columns for a magazine-style look.

column-rule.html
<style>
  .magazine {
    column-count: 3;
    column-gap: 1.5rem;
    column-rule: 1px solid #cbd5e1;
  }
</style>

<div class="magazine">...</div>
Try It Yourself

How It Works

column-rule draws a line in the gap between columns, similar to a border between table cells.

🧠 How column-count Works

1

You set a column count

Apply column-count: 3 (or another number) on a block container.

CSS rule
2

Browser creates column boxes

The container is divided into equal-width column areas inside the element.

Layout
3

Content flows across columns

Text fills the first column top-to-bottom, then continues in the next column.

Content flow
=

Newspaper-style layout

Long content is split into readable columns without manual HTML structure for each column.

Modern Browser Support

The column-count property is supported in most modern browsers, including Chrome, Firefox, Safari, Edge, and Opera.

Baseline · Modern browsers

Multi-column layouts today

All major browsers support CSS multi-column layout including column-count.

97% Modern browser support
Google Chrome 50+ · Desktop & Mobile
Full support
Mozilla Firefox 52+ · Desktop & Mobile
Full support
Apple Safari 9+ · macOS & iOS
Full support
Microsoft Edge 12+ · All versions
Full support
Opera 37+ · Modern versions
Full support
column-count property 97% supported

Bottom line: Use column-count for flowing text layouts. Test on mobile and reduce columns with media queries on narrow screens.

Conclusion

The column-count property is a powerful tool for creating multi-column layouts. By dividing content into multiple columns, you can enhance readability and create visually appealing designs.

Experiment with different column counts, gaps, and rules to see how this property can transform your web projects.

💡 Best Practices

✅ Do

  • Use column-count for long article text on wide screens
  • Add column-gap so columns are not cramped together
  • Reduce to one column on mobile with media queries
  • Combine with column-rule for magazine-style dividers
  • Keep enough content so columns look balanced

❌ Don’t

  • Use multi-column layout for separate card components — use Grid instead
  • Split headings awkwardly across columns without break-inside control
  • Force too many columns on narrow screens
  • Forget that images and wide elements may break column flow
  • Confuse column-count with Flexbox or Grid column tracks

Key Takeaways

Knowledge Unlocked

Five things to remember about column-count

Use these points when building multi-column text layouts.

5
Core concepts
02

auto Default

Single column.

Default
🔢 03

Integer count

2, 3, 4 columns.

Values
📝 04

Text flow

Not a item grid.

Context
🛸 05

Pair with gap

column-gap helps.

Tip

❓ Frequently Asked Questions

column-count specifies how many columns an element's content is divided into. Text and inline content flow from one column to the next, similar to a newspaper layout.
The initial value is auto, which means content stays in a single column unless you set a number or use other multi-column properties.
column-count flows one block of text across columns automatically. CSS Grid places separate items into defined rows and columns — better for card layouts and structured grids.
Yes. Pair column-count with column-gap for spacing between columns and column-rule for divider lines between them.
It applies to block containers such as div, article, and section elements that hold flowing text or inline content.

Practice in the Live Editor

Open the HTML editor, set column-count: 3 on a div, and watch text flow across columns.

HTML Editor →

About the author

Mari Selvan M P
Mari Selvan M P 🔗

Developer, cloud engineer, and technical writer

  • Experience 12 years building web and cloud systems
  • Focus Full Stack Development, AWS, and Developer Education

I write practical tutorials so students and working developers can learn by doing—from databases and APIs to deployment on AWS.

5 people found this page helpful