An open API service indexing awesome lists of open source software.

https://github.com/giorgioreale/tabularasa

Streamlined CSS reset for consistent cross-browser design control.
https://github.com/giorgioreale/tabularasa

css css-reset

Last synced: about 2 months ago
JSON representation

Streamlined CSS reset for consistent cross-browser design control.

Awesome Lists containing this project

README

          

# TabulaRasa — Modern CSS Reset

TabulaRasa is an aggressive, modern CSS reset designed for **2026+ web development**.

It removes browser inconsistencies and provides a clean, predictable baseline so you can build your UI without fighting default styles.

No opinions. No components. Just a solid foundation.

---

## Philosophy

- **Aggressive reset** → eliminate as much browser styling as possible
- **Modern-first** → targets evergreen browsers (no legacy hacks)
- **Low specificity** → uses `:where()` to stay easily overridable
- **Design-system ready** → built to sit under component libraries
- **No magic** → you stay in control

---

## What it does

### Layout & Box Model
- Global `box-sizing: border-box`
- `min-width: 0` to prevent flex/grid overflow issues
- Removes all default margins
- Adds `min-height: 100dvh` support

### Typography
- Normalizes `line-height`, font inheritance, and weights
- Removes default heading styles
- Enables modern text wrapping:
- `text-wrap: balance` for headings
- `text-wrap: pretty` for content

### Forms (aggressive)
- Resets all controls with:
```css
appearance: none;
```
- Removes default borders, backgrounds, paddings
- Ensures full font inheritance
- Normalizes file inputs, search inputs, and selects
- Restores native behavior for checkbox/radio

### Media
- Makes media elements responsive by default:
- `max-inline-size: 100%`
- `block-size: auto`
- Forces block display for layout consistency

### Tables
- `border-collapse: collapse`
- Removes spacing and padding inconsistencies
- Normalizes alignment

### Accessibility & UX
- Keeps visible focus via `:focus-visible`
- Enables pointer cursor on interactive elements
- Handles `contenteditable` focus
- Normalizes `hidden` and `template`

### Rendering
- Font smoothing enabled
- `text-rendering: optimizeLegibility`
- `tab-size` normalization

---

## Why TabulaRasa?

Because browser defaults are:
- inconsistent
- outdated
- sometimes just wrong

TabulaRasa gives you a **clean slate** so your design system defines everything — not the browser.

---

## How to use

### 1. Install / copy
Download `tabularasa.css` or include it in your project.

### 2. Include it first
```html

```

Your styles should always come **after** the reset.

---

## Browser Support

Designed for **modern evergreen browsers**.

| Browser | Support |
|----------------|--------|
| Chrome | ✅ |
| Firefox | ✅ |
| Edge | ✅ |
| Safari | ✅ |
| IE | ❌ |

> This reset intentionally **does not support legacy browsers**.

---

## Trade-offs

This is not a “safe” reset.

- You will lose all default styling (especially forms)
- You must style everything yourself
- Not suitable for quick prototypes or legacy projects

But if you're building a serious UI system, this is exactly what you want.

---

## TL;DR

If you want control → use TabulaRasa
If you want defaults → don’t

---