RWD Templates
A template is a starting arrangement of regions, not finished content. Replace assumptions about text length, images, and navigation before publishing it.
How it works
- Responsive design follows content constraints rather than a list of named devices. Resize continuously and check the first width at which the content needs a different arrangement.
- Keep a usable base layout before adding media queries. Verify text enlargement, keyboard focus, and a narrow viewport.
A practical example
The HTML supplies the content; the CSS below styles it. Open both together in the playground, then change the lesson rules at the end of the stylesheet.
<div class="layout"><article class="card"><span class="badge">This Saturday</span><h2>Neighbourhood repair club</h2><p>Bring a small project. Share a useful skill.</p><a href="#booking">View the workshop</a></article><article class="card"><span class="badge">This Saturday</span><h2>Build a bird box</h2><p>Bring a small project. Share a useful skill.</p><a href="#booking">View the workshop</a></article><article class="card"><span class="badge">This Saturday</span><h2>Mend a favourite shirt</h2><p>Bring a small project. Share a useful skill.</p><a href="#booking">View the workshop</a></article></div>
body { margin: 0; padding: 24px; font-family: system-ui, sans-serif; color: #25332d; background: #f4f7f2; }
.card { padding: 20px; background: white; border: 1px solid #d4dfd6; }
h2 { margin-top: 0; }
p { line-height: 1.6; }
a { color: #17634c; }
.badge { display: inline-block; margin-bottom: 12px; font-size: .8rem; }
.layout { display: grid; gap: 16px; }
.photo { width: 100%; height: 160px; background: linear-gradient(135deg, #e4af6b, #668cba); }
button, input, select { font: inherit; padding: 8px; }
label { display: block; margin-block: 12px 4px; }
/* This lesson */
.layout { display: grid; gap: 16px; grid-template-columns: 1fr; }
@media (min-width: 700px) { .layout { grid-template-columns: 2fr 1fr; } .card:first-child { grid-column: 1 / -1; } }
A template is a starting arrangement of regions, not finished content. Replace assumptions about text length, images, and navigation before publishing it.