Every rule below is read from the reset Yumma CSS ships, so this page cannot fall out of step with what your project actually gets.
Box Sizing
Apply a modern box model and remove browser defaults to simplify layout consistency.
*, :before, :after {
box-sizing: border-box;
border: 0 solid;
}
* {
margin: 0;
padding: 0;
}Document
Set a default system font, improve rendering, & apply accessible line-height.
html {
font-family: system-ui, -apple-system, Segoe UI, Roboto, Helvetica Neue, Noto Sans, Liberation Sans, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
}
body {
-webkit-font-smoothing: antialiased;
font-family: inherit;
line-height: 1.5;
}Media Elements
Ensure images & videos behave predictably in all layouts.
canvas, img, picture, svg, video {
max-width: 100%;
display: block;
}Form Elements
Normalize form controls for visual consistency & accessibility.
button, input, optgroup, select, textarea {
background-color: transparent;
padding: .5rem;
font-family: inherit;
}Add a default border to form elements that do not have a class attribute.
button:not([class]), input:not([class]), optgroup:not([class]), select:not([class]), textarea:not([class]) {
border: 1px solid #bfc2c7;
}Apply consistent focus styles to interactive elements.
:is(a, button, input, select, summary, textarea):focus {
outline: 2px solid transparent;
}Set a minimum height for textareas without a defined rows attribute.
textarea:not([rows]) {
min-height: 10em;
}Ensure the buttons have a pointer cursor.
button {
cursor: pointer;
}Disabled states.
button:disabled, input:disabled, select:disabled, textarea:disabled {
cursor: not-allowed;
opacity: .5;
}Typography
Improve rendering, wrapping, & default font behavior.
h1, h2, h3, h4, h5, h6, p {
overflow-wrap: break-word;
}
h1, h2, h3, h4, h5, h6 {
text-wrap: balance;
font-size: 1rem;
font-weight: 600;
}
p {
text-wrap: pretty;
}Chrome, Edge, & Safari bold weight correction:
b, strong {
font-weight: 700;
}Default font size across browsers:
small {
font-size: 80%;
line-height: 1.4;
}Monospace elements keep the browser's own font stack at the surrounding size:
pre, code, kbd, samp {
font-family: monospace;
font-size: 1em;
}Links inherit their color and carry no underline, so a class decides both:
a {
color: inherit;
text-decoration: none;
}Lists
Remove default list styles for clean, customizable lists.
ol, ul {
padding: 0;
list-style: none;
}Tables
Standardize table header styling for better readability.
th {
font-size: 1rem;
font-weight: 600;
}Miscellaneous
Fix minor browser quirks and improve default styles for common elements.
hr {
border-top: 1px solid #bfc2c7;
height: 0;
margin: 1em 0;
}Ensure details and summary elements display correctly.
details {
display: block;
}
summary {
display: list-item;
}Disable Base Styles
Base styles are enabled by default to disable it set normalize to false in yumma.config.mjs.
import { defineConfig } from "yummacss";
export default defineConfig({ normalize: false,});