Panels are the page grid. A words panel is a flat reading plate; an art panel fills with art and places balloons, captions and a corner box in a 3 × 3 grid of named areas, in reading order; a split panel has both. Slanted rows slant their shared gutters in parallel, and a broken frame lets art cross the frame while the words stay inside.
Example#
Usage#
Panels are how a comic page holds sections: a PanelGrid of Panels, read left to right, top to bottom, in DOM order. A words panel is a flat plate for reading; an art panel fills with art and carries its words on balloons and captions placed in a 3 × 3 grid of areas; a split panel has both.
- Frames.
straight(default),slanted(shared gutters slant in parallel; the words region pads out so text stays square) andbroken(art inbreakOutcrosses the frame into the gutter, never into another panel's words). - Grid.
columns(1 to 4) or a CSStemplate;span,rowsandsplash(a full-width tall panel) shape a panel. - Arrival. Panels wipe in once as they reach the viewport; the words are revealed, never moved.
- Phones. One column, slants flattened, split panels stack art on top.
Layer and volume#
Gutters follow the register: paper (studio), pulp with fibre, speck and a vignette (old, Bone at Press), night with grain (neon). Quiet renders slanted and broken frames straight and drops the arrival. Studio: one slanted row and one broken frame per view; Press: slanted free, two broken; Rave free. Phones: one column, no slant, break-out ≤ 24 px.
Anatomy#
- GridPaper gutters, 1.5 rem.
.mk-panel-grid - Words panelA flat plate for reading.
.mk-panel-words - Art panelThe art fills it.
.mk-panel-art - CaptionPlaced in an area of the art panel.
.mk-caption - BalloonA plate over the art, never text on art.
.mk-balloon
Volume#
Quiet
Four kinds of work, mostly websites.Studio
Four kinds of work, mostly websites.Press
Four kinds of work, mostly websites.Rave
Four kinds of work, mostly websites.
Content#
- A panel holds at most three balloons and a caption, and 60 words in all (C4).
- Long reading, prices, forms and legal text go in a words panel in the text face, never in balloons (C8).
Do and don't#
Do
Don't
A pricing table set in balloon lettering inside an art panel.
Accessibility#
- Reading order is DOM order: panels left to right, top to bottom; placement never reorders.
- Words stay square and inside the frame; only art breaks out.
- Panels wipe in once; words are revealed, never moved. Reduced motion: present at once.
labelnames a panel and makes it a region.
Props#
| Prop | Type | Default | Description |
|---|---|---|---|
layout | PanelLayout | none | |
art | ReactNode | none | The art (art and split layouts): `aria-hidden` art that fills its region. |
artSide | "left" | "right" | "top" | top | Split only: where the art region sits (default top). |
overlay | ReactNode | none | Art layout: Balloons, Captions and a CornerBox placed by their `place` prop. |
breakOut | ReactNode | none | Broken frame: art that crosses the frame stroke (never words). |
span | number | none | Grid columns to span. |
rows | number | none | Grid rows to span. |
splash | boolean | none | Full width, `min-block-size: clamp(28rem, 70vh, 48rem)`. |
minBlock | string | clamp(16rem, 40vh, 28rem) | Art layout minimum block size (default `clamp(16rem, 40vh, 28rem)`). |
label | string | none | Names the panel (`aria-label`) and makes it a region. |
slant | PanelSlant | none | Set by `PanelGrid` on slanted rows; a panel may also set it itself. |
children | ReactNode | none | Words content (words and split layouts); in the art layout, the same as `overlay`. |
Tokens#
System tokens (11)
--mk-a-wipe--mk-break-out--mk-dur-panel--mk-dur-panel-stagger--mk-ease-wipe--mk-ink--mk-paper-plate--mk-slant-x--mk-space-4--mk-space-5--mk-space-6
Its own properties (21)
--mk-cx-grain--mk-cx-gutter-bg--mk-cx-gutter-tex--mk-cx-line--mk-cx-line-ink--mk-cx-tex-neon--mk-cx-tex-old--mk-cx-vignette--mk-gutter--mk-i--mk-panel-break--mk-panel-cols--mk-panel-fill--mk-panel-inner--mk-panel-min--mk-panel-outer--mk-panel-overlay-pad--mk-panel-pad--mk-panel-rows--mk-panel-span--mk-panel-template
Changelog#
Arrived in 0.1.0.
- The print and comic kits, P0 (21 P2-T11 to P2-T15): the art core (seeded halftone, bursts, balloons, lines, krackle, printer's marks, SFX layers, the texture tiles and
gen-print-tiles), the print kit (Halftone,Overprint,PrinterMarks,Sticker,Stamp,Seal,useStampLand,Tape,Grain,Misregistrationand the.mk-ovsecond ink,GiantGlyph,ShapeGlyph), the dataCover(grid and score,coverAlt,CoverLegend), the comic registers and kit (Panel,PanelGrid,Balloon,Caption,CornerBox,EditorsNote,ContinuedIn,SFX,SfxBurst,SpeedLines,FocusLines,ImpactStar,KeyPop).