Skip to main content
VelinStyle v0.8.0
⌂ Home
  1. Docs
  2. Layout
  3. Patterns

Layout patterns

High-level page shells live in src/layout/patterns.css (.velin-layout-*). Optional grid helpers for dense auto-flow and a classic app template live in src/layout/grid.css alongside the column utilities documented on Grid.

Shell layouts

Apply a single class on a wrapper element. Child order matters for a few patterns (noted below).

ClassUse case
.velin-layout-sidebarFixed sidebar + main; stacks on small viewports.
.velin-layout-holy-grailHeader, sidebar, main, footer — header/footer span full width.
.velin-layout-sticky-footerFlex column; main or [role="main"] grows so the footer sits at the bottom.
.velin-layout-centerCenters content in the viewport (e.g. empty states).
.velin-layout-pancakeHeader / flexible body / footer rows.
.velin-layout-aside-mainMain + 20rem aside; collapses to one column under 56rem.
.velin-layout-splitTwo equal columns; single column under 48rem.
.velin-layout-dashboardExpects header, then aside, then main as the first three children.
.velin-layout-auth + .velin-layout-auth__panelFull-viewport centered column for sign-in / register cards.

Grid helpers

Use on a .velin-grid container (see Grid for base modifiers).

ClassEffect
.velin-grid--flow-denseSets grid-auto-flow: dense for tighter packing of auto-placed items.
.velin-grid--areas-appNamed template: top row app-head full width; second row app-side | app-main.
.velin-area-head, .velin-area-side, .velin-area-mainMap children to the app-* areas when using .velin-grid--areas-app.
<div class="velin-grid velin-grid--areas-app">
  <header class="velin-area-head">…</header>
  <aside class="velin-area-side">…</aside>
  <main class="velin-area-main">…</main>
</div>

Theme wählen