Mini CSS part 2
- Date
- 15 April, 2026
- Category
- code
- Tags
- CSS
I'm back and I'm still talking about mini CSS frameworks. I decided to make a pretty basic HTML page based off of the MDN "Structuring Documents" example and load in different CSS frameworks with zero customization.
The classless frameworks have an advantage here, since they don't have utility classes and templates to build from, but are intended for something as simple as this document. Still, I figured any of them should have a pretty decent shot at styling very basic HTML elements.
One funny thing I noticed is that many of the frameworks look basically identical in this use case, with a few color differences. I suspect this is because so many of them are built on top of normalize.css.
Screenshots
Here are a couple screenshots of some frameworks I found more noteworthy than others. If you'd like to repeat my experiment, the code I used is at the bottom. Just uncomment the frameworks you'd like to see!
And of course, if you can't make up your mind, you could turn them all on...
My example
<html>
<head>
<title>Testing frameworks</title>
<!-- bulma -->
<!-- <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bulma@1.0.4/css/bulma.min.css"> -->
<!-- chota -->
<!-- <link rel="stylesheet" href="https://unpkg.com/chota@latest"> -->
<!-- mini.css -->
<!-- <link rel="stylesheet" href="https://cdn.rawgit.com/Chalarangelo/mini.css/v3.0.1/dist/mini-default.min.css"> -->
<!-- picnic -->
<!-- <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/picnic"> -->
<!-- pico -->
<!-- <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@picocss/pico@2/css/pico.min.css"> -->
<!-- pure -->
<!-- <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/purecss@3.0.0/build/pure-min.css" integrity="sha384-X38yfunGUhNzHpBaEBsWLO+A0HDYOQi8ufWDkZ0k9e0eXz/tH3II7uKZ9msv++Ls" crossorigin="anonymous"> -->
<!-- milligram (uncomment all of the below) -->
<!-- <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300italic,700,700italic"> -->
<!-- <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/8.0.1/normalize.css"> -->
<!-- <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/milligram/1.4.1/milligram.css"> -->
<!-- mvp.css -->
<!-- <link rel="stylesheet" href="https://unpkg.com/mvp.css"> -->
<!-- sakura -->
<!-- <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/sakura.css/css/sakura.css" type="text/css"> -->
<!-- simple.css -->
<!-- <link rel="stylesheet" href="https://cdn.simplecss.org/simple.min.css"> -->
<!-- spectre -->
<!-- <link rel="stylesheet" href="https://unpkg.com/spectre.css/dist/spectre.min.css"> -->
<!-- spry -->
<!-- <link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/ggedde/spry-css@2.3.23/dist/spry.min.css"> -->
<!-- sugar -->
<!-- <link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/Rezi/sugar-css@main/dist/sugar.min.css" /> -->
<!-- tacit -->
<!-- <link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/yegor256/tacit@gh-pages/tacit-css-1.9.5.min.css"/> -->
<!-- tachyons -->
<!-- <link rel="stylesheet" href="https://unpkg.com/tachyons@4.12.0/css/tachyons.min.css"/> -->
<!-- water -->
<!-- <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/water.css@2/out/water.css"> -->
<!-- wing -->
<!-- <link rel="stylesheet" href="https://unpkg.com/wingcss"/> -->
</head>
<body>
<header>
<h1>H1 element in header</h1>
<nav>
<ul>
<li><a href="#">Nav item</a></li>
<li><a href="#">Nav item</a></li>
<li><a href="#">Nav item</a></li>
</ul>
<form>
<input type="search" name="search" placeholder="Search input" />
<input type="submit" value="Search" />
</form>
</nav>
</header>
<main>
<section>
<h2>H2 element in a section</h2>
<p>This is a paragraph tag of reasonable length. All went well on Starbase twelve. I think you'll find the ship to be in splendid condition. Power... weapons... communications. We're being stripped one system at a time... Their defenses apparently prevent deep strikes into each other's territory. Minor skirmishes are all that's left. Then... what if we re-connect their command pathways and give them a choice?</p>
</section>
<section>
<h2>Another H2</h2>
<article>
<h3>H3 element in section > article</h3>
<p>P tag it's complete, but I would like to request an addition. I hope I'm better than you realize, Ral. Maybe I'm just afraid of the big chair. You're the one who said it. And while we're at it... this isn't part of any human future...</p>
<aside>
<h4>H4 tag in aside</h4>
<ol>
<li>List item</li>
<li>List item</li>
</ol>
</aside>
</article>
</section>
</main>
<footer>
<p>Some footer content</p>
</footer>
</body>
</html>