Article Card
Nested headers and footers create a natural card anatomy.
Articles inside sections inherit the same panel treatment as top-level content panels.
A comprehensive static page for checking how Vitre CSS and Vitre JS handle raw semantic HTML. It is intentionally broader and denser than the main documentation.
These swatches use Vitre variables directly, so they update with system theme changes
or an explicit data-theme override.
| Token | Preview | Role |
|---|---|---|
--vitre-primary |
Links, focus, primary actions | |
--vitre-bg |
Page background | |
--vitre-surface |
Panels and elevated surfaces | |
--vitre-text |
Primary text | |
--vitre-muted |
Body copy and secondary text | |
--vitre-border |
Control and table borders |
Vitre is designed for ordinary paragraphs, inline links, emphasized text, strong text, marked text, and small metadata such as .
Abbreviations like CSS, inserted text like
new token names, deleted text like old aliases, and formulas like
H2O or x2 should sit cleanly in running copy.
Small text should stay legible without competing with body copy.
Vitre UICompact supporting text inside an hgroup.
Ruby annotations should remain legible: 透明.
Classless CSS should make the common path beautiful while leaving customization available through a clear variable surface.
Nested headers and footers create a natural card anatomy.
Articles inside sections inherit the same panel treatment as top-level content panels.
This non-modal preview checks dialog-like content without covering later sections. The Close button is intentionally inactive in this static example.
| Token | Purpose | Example |
|---|---|---|
--vitre-primary |
Primary action and link color | hsl(214 88% 46%) |
--vitre-radius |
Default control radius | 0.75rem |
--vitre-shadow |
Elevated surface shadow | 0 18px 48px ... |
| Total | Three sample tokens | |
Inline code should work with const theme = "vitre"; and keyboard hints like Ctrl + K.
:root {
--vitre-hue: 168;
--vitre-primary: hsl(var(--vitre-hue) 76% 42%);
}
Vitre follows system color preference by default and supports explicit
data-theme="light" and data-theme="dark" overrides.