Build custom CSS Layouts in seconds

Build your features without worrying about layouts. Stay in your flow and complete your work faster.

Most developers think in CSS properties like display: grid and grid-template-columns, but doing that slows you down and causes you to lose track of what you were doing.

We didn’t have good alternatives so far — until now.

Imagine how much simpler layouts could be if you can just think Three column grid, Masonry layout, or Sticky element, and it just works. Splendid Layouts let you do just that.

90% of layout rules fall under just 4 categories

When you have classes that supports each category's needs, building layouts become a breeze.

Shell

The fundamental app structure, like:

  • Header
  • Sidebar
  • Main content

These must be flexible enough to account for various holy-grail placements.

Macro

Page-level arrangements, like:

  • Sections
  • Grids

These must enable responsive behavior and still be flexible enough for different placements.

Micro

Component-level creations, like:

  • Content arrangement
  • Dividers
  • Breakouts

These need to give you ways to shape the component to different styles.

Positioning

Precise placement, like:

  • Overlays
  • Corner elements
  • Badges

These need quick precision so you don't adjust top, left, bottom, and right positions manually

Splendid Layouts

25 utilities, infinite possibilities. Building responsive layouts quickly is no longer a dream.

Splendid Layouts contains 25 utilities spread over these 4 categories:

  • 2 in shell
  • 9 in macro
  • 9 in micro
  • 5 in positioning

These utilities are highly visual. You can tell what they do just by reading their class names, so your mind can place them in the right location quickly without diving deep into CSS Land!

Without further ado, here are the utilities. Click on each one to view their documentation.

Shell Layouts
Shell Simple

Basic holy-grail with header, content, and footer.

Header
Content
Shell Grid

Holy-grail layout with header, content, footer, and sidebars.

Header
Content
Footer
Macro Layouts
Wrap

Adds inline padding to wrap the element

Wrapped content
Grid simple

Creates a CSS Grid with any number of columns.

Grid Fr Auto

Creates a CSS Grid with any number of fr columns, followed by a final auto column.

1fr
1fr
Auto
Grid Fr Auto

Creates a CSS Grid an auto column, followed by any number of fr columns.

Auto
1fr
1fr
Grid With Breakout

A three-column grid that gives you utilities to break out of the main content easily.

Normal
🫲
Normal
🤜
Breakout
Start
End
Grid Gallery

Create CSS galleries with auto-fill or auto-fit.

Grid Flex

A flexbox grid that automatically centers or expands orphan items.

masonry

A grid with items of unequal width and height.

Subgrid

Use CSS Subgrid and nested subgrids with ease

1
2
3
4
5
6
7
8
Micro Layouts
Horizontal

Arrange items in a horizontal manner.

One
Two
Three
Vertical

Arrange items in a vertical manner.

One
Two
Three
Four
Five
Six
Flow

Allow items to flow from one line to another.

One
Two
Three
Four
Five
Six
Stack

Stacks elements on top of each other.

Background
Content
Foreground
Hover over this to see the stack
Dividers

Create horizontal and vertical dividers easily within your components.

vertical
horizontal
Breakout

Let an element break out of its container with negative margins.

Top
Bottom
Left
Right
Scrollable

Create scrollbars with scroll-snap enhancements for your components when appropriate

One
Two
Three
Four
Five
Six
Seven
Eight
Nine
Ten
Eleven
One
Two
Three
Four
Five
Six
Seven
Eight
Nine
Ten
Eleven
Container

Creates an element for container queries

75% of the container's width
New Stacking Context

Creates a new stacking context via an easy way

New Stacking Context 🙃
Positioning
Pos

Position your element on any side or corner.

TopLeft
Top
TopRight
Left
Center
Right
BtmLeft
Bottom
BtmRight
Edge

Put your element on any edge — even in the corners

TopLeft
Top
TopRight
Left
Right
BtmLeft
Btm
BtmRight
Fixed

Create fixed-position items on any side or corner.

TopLeft
Top
TopRight
Left
Right
BottomRight
Bottom
BottomLeft
Nudge

Move an element towards the center of its container (or away from it).

Nudge Amount
0.5rem
Top Left
Top
Top Right
Left
Right
Bottom Left
Bottom
Bottom Right
Sticky

Creates sticky elements on any side and style it when it sticks

Ignore this text and focus on the sticky item instead. The purpose of this is to increase the height of the content so we can showcase the sticky item.

Sticks to the top. Turns blue when sticking.

Ignore this text and focus on the sticky item instead. The purpose of this is to increase the height of the content so we can showcase the sticky item.

Ignore this text and focus on the sticky item instead. The purpose of this is to increase the height of the content so we can showcase the sticky item.

Ignore this text and focus on the sticky item instead. The purpose of this is to increase the height of the content so we can showcase the sticky item.

Ignore this text and focus on the sticky item instead. The purpose of this is to increase the height of the content so we can showcase the sticky item.

With these tools in your belt, you no longer need to remember the (who knows how many) CSS layout properties and value pairs.

  • No more memorizing layout patterns
  • No more losing your hard-earned “deep-work” context by diving into CSS mode
  • Probably way way lesser frustration (and perhaps some joy) when creating CSS layouts.

These classes are mostly invisible once you have gotten used to them. Just like how Mac users can’t really switch back to Windows since Mac is well designed, I haven’t been able to go back after I began using these classes.

An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun. An easy way to create layouts. Make layouts in seconds. Build anything you want. Compose layouts with ease. Stay in your flow. Have more fun.

Coding layouts has never been this simple before

We've designed each utility to robust and simple. They handle can handle the demands of a power user while producing robust code at the same time.

Here are some features of grid-simple to illustrate this point.

When you use Tailwind or CSS, you need to include boilerplate code like minmax and max-width to prevent CSS grid blowout.

Here’s what you need if you used Tailwind:

<div class="grid grid-cols-[repeat(3,minmax(0,1fr))] gap-4">
<div class="max-w-full">...</div>
<div class="max-w-full">...</div>
<div class="max-w-full">...</div>
</div>

And here’s the equivalent in Vanilla CSS:

.grid {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 1rem;
max-width: 100%;
> * {
max-width: 100%;
}
}

Here’s the output:

The Developer Behind This Layout Solution

Zell

Hi, my name is Zell and I like to do great work. So far, I have:

  • Written for publications like CSS Tricks, Smashing Magazine, and A List Apart.
  • Given conference talks at CSSConf Asia, JSConf Asia, Fronteers, and Pixel Pioneers, to name a few.

Splendid Layouts is born from my personal frustration with ineffective layouts and my desire to build great things quickly.

Zell is the rare sort of developer who both knows his stuff and can explain even the most technical jargon in approachable — and even fun! — ways.

I’ve taken his courses and always look forward to his writing because I know I’ll walk away with something that makes me a better front-ender.

Geoff Graham
Geoff Graham
Chief Editor @ CSS Tricks

Your articles are honestly the best resources out there! They have really helped 100Devs folx understand topics that are always stumbling blocks for new devs.

Really appreciate the work you put into your content!

Leon Noel
Leon Noel
#100Devs Instructor

Zell is one of those rare people who commands tremendous knowledge and experience but remains humble and helpful. They want you to know what they know, not just be impressed by it.

In other words, Zell is a natural teacher. You’re lucky to have him because he feels lucky to be able to help you in your journey.

Heydon Pickering
Heydon Pickering
Accessibility Consultant

Getting access to Splendid Layouts

You have two ways to get access to Splendid Layouts today.

Choose Splendid Layouts if you want to work with our robust layout system today. Or get Splendid Pro to have an access pass to everything we have built for developers who value craft and DX.

Splendid Layouts

$9 / mo
Get the robust system that lets you build layouts in seconds without losing your context.
  • All layout classes
  • Guides for each each layout class
  • Guides on combining layout classes*
  • Discord community

Splendid Pro

$29 $15 / mo
50% off
Get access to everything we have built for developers who value craft, speed, and dev experience.
  • Everything in Splendid Layouts
  • All other Splendid libraries
    • Splendid Astro*
    • Splendid Styles*
    • Splendid Svelte*
    • Splendid Utils*

*Documentation for these are still a work-in-progress. We're striving to finish them as soon as we can :)

Once you have decided:

  • Click the respective button
  • Make payment
  • And you’ll receive an email with your password to login and read the guides for each tool.

Here’s what you can expect as you begin to use Splendid Layouts:

  • Today: You can download and use it in your projects
  • Tomorrow: You’ll be able to build simple layouts quickly — like responsive 3-column grids, masonry, and other straightforward stuff.
  • Within this week: You might start using advanced classes like stack to create more complex layouts.
  • By the end of this month: You might never want to go back to writing CSS properties or Tailwind utility classes for the use cases covered by Splendid Layouts.

Frequently Asked Questions

Here are answers to some of the questions may ask as you wonder if Splendid Layouts would fit into your development workflow.

Tools should aid you, not hinder you

They should support your work and multiply your capabilities.

They should not feel frustrating to use.

They should not consume your energy.

I built Splendid Layouts because I did not want to be frustrated with the existing tools anymore. I want to be able to create layouts faster with less effort.

But I also understand that too many libraries have overpromised and underdelivered, so you might not even want to check out another one.

That’s okay.

But if you continue to have a nagging feeling that there could be a better way to create layouts, you might want to listen to that for a little bit.

If you’re saying things like:

  • “I wish those 2-hour layout ‘quick fixes’ (that taken only 15 mins max) can actually be done in 15 mins…”
  • I don’t want to spend hours on layout problems I’ve solved before”
  • I have more important things to do with my brain than remembering CSS layout patterns”
  • I’m tired of losing important context and being unable to retrieve them”
  • I don’t wanna be angry with myself for my eye for detail and the compulsion to improve my layouts and designs any longer”
  • “Maybe Splendid Layouts can solve my layout woes…”

Deep down, you know that speed matters. Every hour you spend wrestling layouts is another hour you’re not building things that actually matter.

The cost of staying where you are isn’t just the wasted hours. It’s the missed opportunities to showcase your real skillsthe ones AI can’t replicate: your eye for detail, your understanding of user experience, your ability to craft something beautiful.

Splendid Layouts doesn’t replace your expertise. It amplifies it. You’ll still be writing quality code, just faster. You’ll still be making thoughtful decisions, just without the CSS busywork.

Try it for 60 days. If Splendid Layouts doesn’t speed up your workflow enough to justify the cost, get every cent back. No questions, no hassles.

Splendid Layouts

$9 / mo
Get the robust system that lets you build layouts in seconds without losing your context.
  • All layout classes
  • Guides for each each layout class
  • Guides on combining layout classes*
  • Discord community

Splendid Pro

$29 $15 / mo
50% off
Get access to everything we have built for developers who value craft, speed, and dev experience.
  • Everything in Splendid Layouts
  • All other Splendid libraries
    • Splendid Astro*
    • Splendid Styles*
    • Splendid Svelte*
    • Splendid Utils*

You’re too talented to waste time fighting layouts.

Let’s fix this once and for all.

P.S. Your attention to detail is an asset, not a liability. The right tools honor that perfectionism instead of fighting it. Get Splendid Layouts and stop settling for tools that make you choose between speed and craft.