90-minute class plan
- 0–10 min — Opening and visual warm-up: Introduce the learning goals, review the previous class, and discuss a relevant website example.
- 10–25 min — Mini-lesson: Explain the key concepts and show examples. Keep the presentation focused on what students will apply.
- 25–45 min — Instructor demonstration: Walk through the interactive CodePen or a live example. Pause for predictions and questions.
- 45–70 min — Guided and independent practice: Students complete the lesson exercise, first following a short demonstration and then making their own decisions.
- 70–83 min — Apply and critique: Students connect the skill to their website project, compare results with a partner, and make one improvement.
- 83–90 min — Share-out and exit ticket: Review key takeaways and ask students to identify one thing they learned and one next step.
Course: Introduction to Web Design
Week: 5
Learning objectives
By the end of this lesson, you should be able to:
- Use type scale, line length, and spacing to establish hierarchy.
- Explain how color contrast affects readability.
- Develop a consistent visual direction for a web page.
Key concepts
Typography communicates tone and creates a path through information. Headings, subheadings, body text, labels, and captions should have distinct but related roles. Scale, weight, line height, and line length all affect readability.
Color communicates hierarchy and mood, but color choices must maintain sufficient contrast. A beautiful palette is not successful if visitors cannot comfortably read its text.
A visual system should be consistent without making every element identical. Use a limited set of type styles, a deliberate color palette, and repeatable spacing decisions.
Interactive demonstration
Demo file: 15-typography-hierarchy.html
Experiment with the Typography Hierarchy Lab. Adjust headline scale, body text size, line length, and headline style. Then use Color & Contrast Lab to compare text and background combinations.
See the Pen 15-typography-hierarchy by Nicholas D’Angelo (@ndangelo) on CodePen.
Create a one-page style tile with a headline, subheading, body text, button, and three to five colors. Test text/background combinations and record contrast ratios for main text colors.
Connection to your website project
Use this style tile as a visual guide for the midterm and final websites.
Sublime Text coding lab
Complete this coding task in Sublime Text, save the files using the names below, and open the HTML page in a browser to test it.
Today’s coding focus
Typography, color, hierarchy, reusable classes, and accessible contrast
Project files and folder structure
Create week-05/index.html and week-05/css/styles.css.
Syntax to practice
HTML class attributes, CSS class selectors, font stacks, font-size, font-weight, line-height, color values, and CSS custom properties such as --color-accent.
Build it
Create a small style guide and apply it to the page. Define at least four colors, a type scale for h1, h2, body, and small text, and style a button/link. Check contrast with a contrast checker.
Code along: Create reusable color and spacing values with custom properties.
Open in Sublime Text: week-05/css/styles.css
Type the example below, save the file, and read the comments and selectors carefully. Use this as a starting point, then modify it for your own project.
:root {
--color-ink: #20242c;
--color-paper: #f7f5f0;
--color-accent: #c64f3d;
--space-unit: 8px;
}
body {
color: var(--color-ink);
background: var(--color-paper);
font-family: Arial, sans-serif;
line-height: 1.6;
}
a { color: var(--color-accent); }
Complete HTML and CSS example
These are matching files. Create the folders shown below, save each code sample using the exact filename, and keep the stylesheet link consistent with your folder structure.
HTML file: week-05/index.html
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Style Guide Example</title>
<link rel="stylesheet" href="css/styles.css">
</head>
<body>
<main class="style-guide">
<p class="eyebrow">Visual identity</p>
<h1>A small style guide</h1>
<p>Use a consistent palette, typography, and spacing system.</p>
<a class="button" href="#details">Explore the guide</a>
<section id="details"><h2>Color and type</h2><p>Reuse design choices consistently.</p></section>
</main>
</body>
</html>
CSS file: week-05/css/styles.css
:root {
--color-ink: #20242c;
--color-paper: #f7f5f0;
--color-accent: #c64f3d;
--space-unit: 8px;
}
body { margin: 0; background: var(--color-paper); color: var(--color-ink); font: 16px/1.6 Arial, sans-serif; }
.style-guide { max-width: 760px; margin: auto; padding: calc(var(--space-unit) * 3); }
h1 { font-size: clamp(2rem, 5vw, 3.5rem); line-height: 1.1; }
.eyebrow { color: var(--color-accent); text-transform: uppercase; letter-spacing: .08em; }
.button { display: inline-block; padding: 10px 16px; background: var(--color-accent); color: white; text-decoration: none; border-radius: 5px; }
Important: The HTML links to css/styles.css. Keep that path correct relative to the HTML file.
Modify it
Change the accent color and add a .button class with padding, background, and border-radius.
Save and test
- Save the file in the exact folder shown above.
- Open the HTML file in a browser, or refresh it after saving if it is already open.
- Check that linked CSS, images, and navigation work. If something fails, inspect filenames, capitalization, nesting, and relative paths.
Assignment and required deliverables
Submit every item below. Use the specified filenames and folder structure. A screenshot does not replace a required source file.
Required files
week-05/index.htmlandweek-05/css/styles.css— styled page using a consistent design system.week-05/style-guide.pdfor.png— four labeled color swatches, type choices, h1/h2/body samples, and button/link example.week-05/README.txt— typefaces/fallbacks and contrast results for body text and accent action.
Submission checklist
- Four palette colors; four text levels; reusable classes or variables; contrast results recorded; guide matches page.
- Keep all HTML, CSS, image, text, and PDF files inside the named weekly or project folder.
- Open the HTML file in a browser before submitting and confirm linked CSS and images load.
Before you leave (3-minute exit check)
Write down one thing you changed, one thing you learned from the result, and one question you still have.
References
These references support the key concepts and practices covered in this lesson. They are provided for verification and further study.
- Mozilla Contributors. (n.d.). *Fundamental text and font styling*. MDN Web Docs. https://developer.mozilla.org/en-US/docs/Learn_web_development/Core/Text_styling/Fundamentals
- Google. (n.d.). *Google Fonts*. Google Fonts. https://fonts.google.com/
- World Wide Web Consortium. (n.d.). *Tips for designing*. Web Accessibility Initiative. https://www.w3.org/WAI/tips/designing/