CSS Framework Demo

This document exercises the key HTML elements your framework must style. Your goal is to make this page look intentional using only your CSS framework.

Typography & Headings

Heading Level 1

This is a paragraph under an h1. Your framework should define a clear visual hierarchy for headings and paragraphs, with readable line height and spacing.

Heading Level 2

Strong text should stand out, while emphasized text should be noticeable but not obnoxious. Small text is often used for fine print or secondary information.

Heading Level 3

You can use the mark element to highlight text, and the del element or ins element to indicate changes.

Heading Level 4

API is an important term in web development. The date element can represent times and dates.

Heading Level 5

Make sure lower-level headings like h5 and h6 are still readable and obviously “smaller” in the hierarchy.

Heading Level 6

Body copy should be comfortable to read on both mobile and desktop, without tiny fonts or giant walls of text.

“Good defaults are invisible until they’re not there.”

— Someone who has seen too many browser defaults

Inline quotes with q elements should also look reasonable.

Lists

Unordered List

A basic unordered list:

  • Learn HTML & CSS
  • Practice JavaScript
  • Build projects

Nested Unordered List

  • Frontend
    • HTML
    • CSS
    • JavaScript
  • Backend
    • Node.js
    • Databases

Ordered List

  1. Fork the repo.
  2. Link the framework.
  3. Style all the things.

Description List

Accessibility
Designing for all users, including keyboard and screen-reader users.
Performance
Ensuring pages load quickly and efficiently.
Maintainability
Code that future you does not hate.

Code & Preformatted Text

Inline code looks like const answer = 42; inside a sentence.

// Preformatted code block
function greet(name) {
  console.log(`Hello, ${name}!`);
}

greet("world");

The kbd element indicates user input from the keyboard, e.g. Ctrl + S. The samp element represents sample program output.

Media, Figures, and Captions

Placeholder graphic showing layout
A simple figure with an image and caption. Your framework should make this look decent at different viewport widths.

Images should not overflow the container. Use sensible defaults for img and figure.

Tables

Example: Learning Milestones
Milestone Focus Area Approx. Time
Foundations HTML & CSS 2–4 weeks
Interactivity JavaScript Basics 4–6 weeks
Frameworks React, Vue, or similar 6–12 weeks
Actual time varies. The key is consistent practice.

Forms & Form Controls

Basic Information
Preferences
Newsletter
Experience Level
Actions

Miscellaneous Elements

Expandable Details Element

The details and summary elements provide a built-in disclosure widget.

This section exists mostly to remind you to test selection styles: try selecting this text to see how ::selection looks with your colors.