Columns
Tailwind’s multi-column utilities for creating flexible, masonry-style layouts with fine-grained control over layout and spacing.
Set columns by count
Use columns-{count} utilities to set the number of columns created for the content within an element.
<div class="columns-3 ...">
<img class="aspect-3/2 ..." src="/img/mountains-1.avif" />
<img class="aspect-square ..." src="/img/mountains-2.avif" />
<img class="aspect-square ..." src="/img/mountains-3.avif" />
<!-- ... -->
</div>Set columns by width
Utilities like columns-xs and columns-sm set the ideal column width for an element’s content, with column count automatically adjusting to fit.
<div class="columns-2xs ...">
<img class="aspect-3/2 ..." src="/img/mountains-1.avif" />
<img class="aspect-square ..." src="/img/mountains-2.avif" />
<img class="aspect-square ..." src="/img/mountains-3.avif" />
<!-- ... -->
</div>Adjust the column gap
Use gap-<width> utilities to control the spacing between columns.
<div class="columns-3 gap-8 ...">
<img class="aspect-3/2 ..." src="/img/mountains-1.avif" />
<img class="aspect-square ..." src="/img/mountains-2.avif" />
<img class="aspect-square ..." src="/img/mountains-3.avif" />
<!-- ... -->
</div>Responsive column layouts
Prefix a columns utility with a breakpoint, such as sm:, to apply it only at that screen size and above.
<div class="columns-2 gap-4 sm:columns-3 sm:gap-8 ...">
<img class="aspect-3/2 ..." src="/img/mountains-1.avif" />
<img class="aspect-square ..." src="/img/mountains-2.avif" />
<img class="aspect-square ..." src="/img/mountains-3.avif" />
<!-- ... -->
</div>