simple.css a nice simple and stylish framework replacement
What is simple.css?
Simple CSS is a framework that you can just drop into your site, and it styles the actual html elements, so no class names are required for this out of the box, just add the script and off it goes. It comes with dark mode built in as well so you dont have to worry about that, just uses the system preferred.
Also its super light weight as well, not some 150kb like bootstrap its more like 5-10kb so your site will be loading in a flash!
Preview
a preview of simple css
What can i use this for?
Simple css can be used for simple sites that you dont want to spent hours adding classes and formatting things, its a nice easy solution to just drop into a site and make it look nice.
Installation
UNPKG.com (CDN for npm)
Simple.css is also published to npm. Both minified and un-minified versions of the CSS are available NPM’s CDN, unpkg.
So all you need to do in order to use Simple.css in your project, is add the following line of code to the <head>
section of your HTML:
<!-- Minified version -->
<link rel="stylesheet" href="https://unpkg.com/simpledotcss/simple.min.css">
<!-- Un-minified version -->
<link rel="stylesheet" href="https://unpkg.com/simpledotcss/simple.css">
Conclusion
Simple CSS is really nice and light weight and can help you get a simple site up and running with minimal effort.
Original Source
You can check out the simple css main site here for more demos and information about simple css.
simple.css a nice simple and stylish framework replacement Demo
View Demo Full Screen View Demo New Tab
simple.css a nice simple and stylish framework replacement Code
HTML
<main>
<p>This page is a demonstration of the elements that can be formatted using Simple.css. Each section includes a code block on how to include it in your site’s design.</p>
<p>This may be a little basic for some people, but I wanted the barrier for entry to be as low as possible for this project.</p>
<h2 id="basic-typography">Basic Typography</h2>
<p>All the typography of Simple.css uses <code class="language-plaintext highlighter-rouge">rem</code> for sizing. This means that accessibility is maintained for those who change their browser font size. The <code class="language-plaintext highlighter-rouge">body</code> element has a size of <code class="language-plaintext highlighter-rouge">1.15rem</code> which makes all the standard font sizes slightly larger. This equates to <code class="language-plaintext highlighter-rouge">18.4px</code> for paragraph text, instead of the standard <code class="language-plaintext highlighter-rouge">16px</code>.</p>
<p>The heading elements also have an increased top margin in order to break blocks of text up better.</p>
<h1 id="heading-1-28rem">Heading 1 <code class="language-plaintext highlighter-rouge">2.8rem</code></h1>
<h2 id="heading-2-225rem">Heading 2 <code class="language-plaintext highlighter-rouge">2.25rem</code></h2>
<h3 id="heading-3-18rem">Heading 3 <code class="language-plaintext highlighter-rouge">1.8rem</code></h3>
<h4 id="heading-4-144rem">Heading 4 <code class="language-plaintext highlighter-rouge">1.44rem</code></h4>
<h5 id="heading-5-115rem">Heading 5 <code class="language-plaintext highlighter-rouge">1.15rem</code></h5>
<h6 id="heading-6-92rem">Heading 6 <code class="language-plaintext highlighter-rouge">.92rem</code></h6>
<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code><h2>This is a H2 header<h2>
<p>This is some paragraph text.</p>
</code></pre></div></div>
<h3 id="links--buttons">Links & Buttons</h3>
<p>Links are formatted very simply on Simple.css (shock horror). They use the <code class="language-plaintext highlighter-rouge">accent</code> CSS variable and are underlined. There is a <code class="language-plaintext highlighter-rouge">:hover</code> effect that removes the underline. Here is an <a href="">example link</a>.</p>
<p>Buttons use the same <code class="language-plaintext highlighter-rouge">accent</code> CSS variable for their colour. When hovering, there is an opacity effect.</p>
<p><button>I’m a button</button></p>
<p><button onclick="window.location.href='https://example.com';">I’m a button with a link</button></p>
<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code><a href="https://example.com">This is a hyperlink</a>
<button>I'm a button</button>
<button onclick="window.location.href='https://example.com';">I'm a button with a link</button>
</code></pre></div></div>
<h2 id="other-typography-elements">Other typography elements</h2>
<p>There are a number of other typography elements that you can use with Simple.css. Some of the common ones are:</p>
<ul>
<li>All the standard stuff, like <strong>bold</strong>, <em>italic</em> and <u>underlined</u> text.</li>
<li><mark>Highlighting text</mark> using the <code class="language-plaintext highlighter-rouge">mark</code> element.</li>
<li>Adding <code class="language-plaintext highlighter-rouge">inline code</code> using the <code class="language-plaintext highlighter-rouge">code</code> element.</li>
<li>Displaying keyboard commands like <kbd>ALT+F4</kbd> using the <code class="language-plaintext highlighter-rouge">kbd</code> element.</li>
</ul>
<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code><b>Bold text</b>
<i>Italic text</i>
<u>Underlined text</u>
<mark>Highlighted text</mark>
<code>Inline code</code>
<kbd>Alt+F4</kbd>
</code></pre></div></div>
<h3 id="lists">Lists</h3>
<p>We all love a good list, right? I know my wife does!</p>
<ul>
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
</ul>
<ol>
<li>Do this thing</li>
<li>Do that thing</li>
<li>Do the other thing</li>
</ol>
<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code># Bulleted list
<ul>
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
</ul>
# Numbered list
<ol>
<li>Do this thing</li>
<li>Do that thing</li>
<li>Do the other thing</li>
</ol>
</code></pre></div></div>
<h3 id="blockquotes">Blockquotes</h3>
<p>Sometimes you may want to quote someone else in your HTML. For this we use the <code class="language-plaintext highlighter-rouge">blockquote</code> element. Here’s what a quote looks like with Simple.css:</p>
<blockquote>
<p>Friends don’t spy; true friendship is about privacy, too.</p>
<p><cite>– Stephen King</cite></p>
</blockquote>
<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code><blockquote>
<p>Friends don’t spy; true friendship is about privacy, too.</p>
<p><cite>– Stephen King</cite></p>
</blockquote>
</code></pre></div></div>
<h3 id="code-blocks">Code blocks</h3>
<p>Code blocks are different from the inline <code class="language-plaintext highlighter-rouge">code</code> element. Code blocks are used when you want to display a block of code, like this:</p>
<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>body {
color: var(--text);
background: var(--bg);
font-size: 1.15rem;
line-height: 1.5;
margin: 0;
}
</code></pre></div></div>
<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code><pre>
<code>
body {
color: var(--text);
background: var(--bg);
font-size: 1.15rem;
line-height: 1.5;
margin: 0;
}
</code>
</pre>
</code></pre></div></div>
<h2 id="navigation">Navigation</h2>
<p>The <code class="language-plaintext highlighter-rouge">nav</code> menu is deliberately designed to be extremely simple so that you can improve on it as you see fit. Or, just leave it as is to have a good looking, functional navigation menu.</p>
<p>There’s no JavaScript or checkbox CSS hacks here. It’s just a collection of simple “buttons” that wrap to the given width of the page:</p>
<nav>
<a href="">Home</a>
<a href="">About</a>
<a href="">Blog</a>
<a href="">Notes</a>
<a href="">Guestbook</a>
<a href="">Contact</a>
<a href="">Link 1</a>
<a href="">Link 2</a>
<a href="">Link 3</a>
</nav>
<p>To add a <code class="language-plaintext highlighter-rouge">nav</code> menu, just add the following to the <code class="language-plaintext highlighter-rouge"><header></code> section of your site:</p>
<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code><nav>
<a href="/">Home</a>
<a href="/about">About</a>
<a href="/blog">Blog</a>
<a href="/notes">Notes</a>
<a href="/guestbook">Guestbook</a>
<a href="/contact">Contact</a>
</nav>
</code></pre></div></div>
<h2 id="images">Images</h2>
<p>In Simple.css, images within the <code class="language-plaintext highlighter-rouge">main</code> element are always full width and have rounded edges to them. The <code class="language-plaintext highlighter-rouge">figcaption</code> element is also formatted in Simple.css. Here are examples of images with and without a caption:</p>
<p><img src="/assets/images/dog-ipad.jpg" alt="A dog at an iPad"></p>
<figure>
<img alt="This is a black swan" src="/assets/images/goose.jpg">
<figcaption>This is a black swan</figcaption>
</figure>
<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code># Standard image
<img alt="A dog on an iPad" src="/assets/images/dog-ipad.jpg" />
# Image with a caption
<figure>
<img alt="This is a black swan" src="/assets/images/goose.jpg" />
<figcaption>This is a black swan</figcaption>
</figure>
</code></pre></div></div>
<h2 id="accordions">Accordions</h2>
<p>Accordions are cool to play with. They’re especially useful when it comes to things like FAQ pages. Many people invoke JavaScript, or <code class="language-plaintext highlighter-rouge">div</code> for life when they use accordions. I don’t really understand why that is when it’s available in plain old HTML:</p>
<details>
<summary>Spoiler alert!</summary>
<p>You smell. 🙂</p>
</details>
<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code><details>
<summary>Spoiler alert!</summary>
<p>You smell. 🙂</p>
</details>
</code></pre></div></div>
<h2 id="tables">Tables</h2>
<p>Like lists, sometimes you may need to add a table to your webpage. In Simple.css tables automatically highlight every other row to make reading easier. Table header text is also bold. Here’s what they look like:</p>
<table>
<thead>
<tr>
<th>Name</th>
<th>Number</th>
</tr>
</thead>
<tbody>
<tr>
<td>Jackie</td>
<td>012345</td>
</tr>
<tr>
<td>Lucy</td>
<td>112346</td>
</tr>
<tr>
<td>David</td>
<td>493029</td>
</tr>
<tr>
<td>Kerry</td>
<td>395499</td>
</tr>
<tr>
<td>Steve</td>
<td>002458</td>
</tr>
</tbody>
</table>
<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code><table>
<thead>
<tr>
<th>Name</th>
<th>Number</th>
</tr>
</thead>
<tbody>
<tr>
<td>Jackie</td>
<td>012345</td>
</tr>
<tr>
<td>Lucy</td>
<td>112346</td>
</tr>
<tr>
<td>David</td>
<td>493029</td>
</tr>
<tr>
<td>Kerry</td>
<td>395499</td>
</tr>
<tr>
<td>Steve</td>
<td>002458</td>
</tr>
</tbody>
</table>
</code></pre></div></div>
<h2 id="forms">Forms</h2>
<p>Forms are useful for all kinds of things on webpages. Contact forms, newsletter sign ups etc. Forms also look pretty good on Simple.css:</p>
<form>
<p><strong>This is just a test form. It doesn't do anything.</strong></p>
<p>
<select>
<option selected="selected" value="1">Title</option>
<option value="2">Mr</option>
<option value="3">Miss</option>
<option value="4">Mrs</option>
<option value="5">Other</option>
</select>
</p>
<p>
<label>First name</label><br>
<input type="text" name="first_name">
</p>
<p>
<label>Surname</label><br>
<input type="text" name="surname">
</p>
<p>
<label>Email</label><br>
<input type="email" name="email" required="">
</p>
<p>
<label>Enquiry type:</label><br>
<label><input checked="checked" name="type" type="radio" value="sales"> Sales</label> <br>
<label><input name="type" type="radio" value="support"> Support</label> <br>
<label><input name="type" type="radio" value="billing"> Billing</label>
</p>
<p>
<label>Message</label><br>
<textarea rows="6"></textarea>
</p>
<p>
<label for="cars">Choose a car:</label><br>
<select name="cars" id="cars" multiple="">
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="opel">Opel</option>
<option value="audi">Audi</option>
</select>
</p>
<p>
<label>
<input type="checkbox" id="checkbox" value="terms">
I agree to the <a href="#">terms and conditions</a>
</label>
</p>
<button>Send</button>
<button type="reset">Reset</button>
<button disabled="disabled">Disabled</button>
</form>
<pre><code class="language-HTML"><form>
<p><strong>This is just a test form. It doesn't do anything.</strong></p>
<p><select>
<option selected="selected" value="1">Title</option>
<option value="2">Mr</option>
<option value="3">Miss</option>
<option value="4">Mrs</option>
<option value="5">Other</option>
</select></p>
<p>
<label>First name</label><br>
<input type="text" name="first_name">
</p>
<p>
<label>Surname</label><br>
<input type="text" name="surname">
</p>
<p>
<label>Email</label><br>
<input type="email" name="email" required="">
</p>
<p>
<label>Enquiry type:</label><br>
<label><input checked="checked" name="type" type="radio" value="sales" /> Sales</label> <br />
<label><input name="type" type="radio" value="support" /> Support</label> <br />
<label><input name="type" type="radio" value="billing" /> Billing</label>
</p>
<p>
<label>Message</label><br>
<textarea rows="6"></textarea>
</p>
<p>
<label>
<input type="checkbox" id="checkbox" value="terms">
I agree to the <a href="#">terms and conditions</a>
</label>
</p>
<button>Send</button>
<button type="reset">Reset</button>
<button disabled="disabled">Disabled</button>
</form>
</code></pre>
</main>
Scripts
<link rel="stylesheet" href="https://unpkg.com/simpledotcss/simple.min.css">