d0 - Classless CSS microframework
v1.0.19
npm i d0css
- Minimalist and lightweight (minified and gzipped CSS <3 KB)
- Styling is not based on classes, additional attributes and hacks
- Just tags and some cascading
- Uses native elements and behaviour when possible
- Valid CSS and HTML
- Pure CSS, no Javascript
- Basic elements typography
- Responsive wrapper, grid, nav, form, image
- Printable style
- Customizable with css variables
- Neutral defaults
- Does not use
float
,!important
Togglers
Menu (stacked on small screen)
nav > ul, header > nav > ul
Nav
inside header
has background.
Submenu of last item drops to the left.
Popup
nav[id] > ulInline block. Empty first
li
makes it pop .
Toggle
section[id]
Modal
aside[id]
Gallery
figure[id] > a > img, figure[id] > a[style="--img:url(...);"]
Show gallery A (linked images, all loaded)
Show gallery B (URL in CSS variable, lazy loading, preload next)
Tabs
nav > ul ~ section[id]
Layout
Wrap (limit max-width)
main
Grid (stacked on small screen)
section > table, section > table td[colspan]
Proportions of columns can be set with colspan
or width
attributes on td
.
Header | ||
Content paragraph | Aside paragraph | |
Footer | ||
Full height
figure > section
Table
table, figure > table
Table
inside figure
has hover effect and (when needed) independent horizontal scrolling.
Component | Support | Action | Code |
---|---|---|---|
Menu | * | hover, responsive | nav > ul, header > nav > ul
|
Popup | * | hover | nav[id] > ul
|
Toggle | * | target | section[id]
|
Modal | * | target | aside[id]
|
Gallery | * | target | figure[id] > a > img, figure[id] > a[style="--img:url(...);"]
|
Tabs | * | target | nav > ul ~ section[id]
|
Wrap | * | max-width | main
|
Grid | * | responsive | section > table, section > table td[colspan]
|
Full | * | height | figure > section
|
Table | * | hover, h-scroll | table, figure > table
|
Form | * | responsive | form > input, form > p > label + br + input, form > table
|
Alert | * | color | figure > mark, figure > b, figure > i, figure > em, mark > button, span > button, mark > a
|
Icon | + | size | svg
|
Form
Inline form
form > input
Stacked form
form > p > label + br + input
Aligned form (stacked on small screen)
form > table, input ~ mark
Typography
Alert and status colors
figure > mark, figure > b, figure > i, figure > em, mark > button, span > button, mark > a
Icon
svg
Link with icon Marked link with icon
Elements
The purpose of this HTML is to help determine what default settings are with CSS and to make sure that all possible HTML Elements are included in this HTML so as to not miss any possible Elements when designing a site.
Headings
Heading 1
Heading 2
Heading 3
Heading 4
Heading 5
Heading 6
Headings with Text
Heading 1
Lorem ipsum dolor sit amet, adipiscing elit. Nullam dignissim convallis est. Quisque aliquam. Donec faucibus. Nunc iaculis suscipit dui. Nam sit amet sem. Aliquam libero nisi, imperdiet at, tincidunt nec, gravida vehicula, nisl.
Heading 2
Lorem ipsum dolor sit amet, adipiscing elit. Nullam dignissim convallis est. Quisque aliquam. Donec faucibus. Nunc iaculis suscipit dui. Nam sit amet sem. Aliquam libero nisi, imperdiet at, tincidunt nec, gravida vehicula, nisl.
Heading 3
Lorem ipsum dolor sit amet, adipiscing elit. Nullam dignissim convallis est. Quisque aliquam. Donec faucibus. Nunc iaculis suscipit dui. Nam sit amet sem. Aliquam libero nisi, imperdiet at, tincidunt nec, gravida vehicula, nisl.
Heading 4
Lorem ipsum dolor sit amet, adipiscing elit. Nullam dignissim convallis est. Quisque aliquam. Donec faucibus. Nunc iaculis suscipit dui. Nam sit amet sem. Aliquam libero nisi, imperdiet at, tincidunt nec, gravida vehicula, nisl.
Heading 5
Lorem ipsum dolor sit amet, adipiscing elit. Nullam dignissim convallis est. Quisque aliquam. Donec faucibus. Nunc iaculis suscipit dui. Nam sit amet sem. Aliquam libero nisi, imperdiet at, tincidunt nec, gravida vehicula, nisl.
Heading 6
Lorem ipsum dolor sit amet, adipiscing elit. Nullam dignissim convallis est. Quisque aliquam. Donec faucibus. Nunc iaculis suscipit dui. Nam sit amet sem. Aliquam libero nisi, imperdiet at, tincidunt nec, gravida vehicula, nisl.
Block Elements
Paragraphs and Images
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.
Aliquam libero nisi, imperdiet at, tincidunt nec, gravida vehicula, nisl. Praesent mattis, massa quis luctus fermentum, turpis mi volutpat justo, eu volutpat enim diam eget metus. Maecenas ornare tortor.
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Nullam dignissim convallis est. Quisque aliquam. Donec faucibus. Nunc iaculis suscipit dui. Nam sit amet sem.
Blockquote
This is a standard paragraph. Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
"This is a blockquote. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Nullam dignissim convallis est. Quisque aliquam. Donec faucibus. Nunc iaculis suscipit dui. Nam sit amet sem. Aliquam libero nisi, imperdiet at, tincidunt nec, gravida vehicula, nisl."
This is a standard paragraph. Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
Figure-Caption
Details-Summary
The summary element example
The details example text. It may be styled differently based on what browser or operating system you are using.
Text Elements
The a element and external a element examples
The abbr element and an abbr element with title examples
The b element example
The cite element example
The code element
example
The data element example
The del element example
The dfn element and dfn element with title examples
The em element example
The i element example
The ins element example
The kbd element example
The mark element example
The q element
example
The q element
exampleinside
a q element
The s element example
The samp element example
The small element example
The span element example
The strong element example
The sub element example
The sup element example
The example
The u element example
The var element example
Monospace / Preformatted
Code block wrapped in "pre" and "code" tags
// Loop through Divs using Javascript.
var divs = document.querySelectorAll('div'), i;
for (i = 0; i < divs.length; ++i) {
divs[i].style.color = "green";
}
Monospace Text wrapped in "pre" tags
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Nullam dignissim convallis est. Quisque aliquam. Donec faucibus. Nunc iaculis suscipit dui. Nam sit amet sem. Aliquam libero nisi, imperdiet at, tincidunt nec, gravida vehicula, nisl.
List Types
Ordered List
- List Item 1
- List Item 2
- List Item 3
- List Item 3.1
- List Item 3.2
- List Item 3.2.1
- List Item 3.2.2
- List Item 3.3
- List Item 4
Unordered List
- List Item 1
- List Item 2
- List Item 3
- List Item 3.1
- List Item 3.2
- List Item 3.2.1
- List Item 3.2.2
- List Item 3.3
- List Item 4
Definition List
- Definition Term 1
- Definition Description 1
- Definition Term 2
- Definition Description 2
Tables
Table Header 1 | Table Header 2 | Table Header 3 |
---|---|---|
Division 1 | Division 2 | Division 3 |
Division 1 | Division 2 | Division 3 |
Division 1 | Division 2 | Division 3 |
A row with a cell spanning all 3 columns | ||
Table Footer 1 | Table Footer 2 | Table Footer 3 |
Media
The Audio Element:
The Video Element:
Embedded content (iframe):
Form Elements
The Fieldset: