A self-study course with 64 detailed lessons, working examples, guided challenges, and eight milestone projects. Work through the lessons in order and build each project before moving to the next phase.
Each lesson folder includes a runnable example.html and editable style.css. Open the example directly in a browser. Lesson 13 includes local audio; its video sample needs an internet connection. Lesson 37 uses an optional online font and has a local fallback.
- Read the lesson, including How it works and Common mistake. Use the field reference or linked standards when you need more detail.
- Run the example, predict what a change will do, edit the code, and check the result.
- Build the guided challenge yourself in a
practice/folder inside that lesson. - Complete the lesson checklist and record what you learned or fixed.
- After each phase, complete its milestone project.
Aim to build the phase projects rather than only reading. HTML and CSS skill comes from repeatedly making, inspecting, and improving pages.
- How the web works — Understand what the browser requests and renders before writing markup.
- Project setup and editor — Create a small, predictable workspace for static web pages.
- HTML document anatomy — Write a complete valid HTML document.
- Text and headings — Mark up written content with a meaningful outline.
- Links and navigation — Connect pages and sections accessibly.
- Images and figures — Choose and describe images appropriately.
- Lists and content grouping — Represent ordered, unordered, and term-based information.
- Semantic page regions — Give a document meaningful structure.
- Tables and data — Use tables for data with understandable relationships.
- Forms fundamentals — Collect data with correctly associated controls.
- Form controls and types — Choose the right control for each answer.
- Validation and form UX — Use built-in constraints and clear instructions.
- Media and embedded content — Add audio, video, and external content responsibly.
- Interactive HTML — Use native disclosure and dialog patterns where suitable.
- Metadata and sharing — Describe pages to browsers and sharing services.
- HTML quality and maintainability — Review markup as a teammate would.
- CSS syntax and connection — Apply styles with readable rules.
- Selectors — Target elements accurately without brittle markup.
- Cascade and specificity — Predict which declaration wins.
- Values and units — Pick units that fit the property and design.
- Color and backgrounds — Create consistent surfaces with readable contrast.
- Typography basics — Make text legible and easy to scan.
- Box model and sizing — Reason about rendered dimensions.
- Display and normal flow — Understand how elements occupy space.
- Positioning and stacking — Place elements without breaking document flow.
- Flexbox — Lay out one-dimensional groups.
- CSS Grid — Lay out two-dimensional page areas.
- Responsive fundamentals — Adapt layouts to available space.
- Container queries — Adapt a component to its container.
- Modern sizing and flow — Create resilient layouts for variable content.
- Responsive images and media — Avoid oversized or distorted media.
- Layout project — Combine layout methods into a complete page.
- Accessibility foundations — Build pages usable through different input and output methods.
- Focus and interaction states — Make interactive elements understandable.
- Accessible forms — Make form errors and groups understandable.
- CSS for forms — Style native controls without hiding their behavior.
- Web fonts and advanced typography — Load fonts carefully and control long-form text.
- Borders shadows and effects — Use surface effects with restraint.
- Transforms transitions animations — Add motion that supports comprehension.
- Print and alternate media — Support layouts beyond screens.
- Custom properties and themes — Centralize reusable values and theme components.
- Cascade layers and scope — Control style priority in larger codebases.
- Advanced selectors — Use powerful selectors with clear intent.
- Subgrid and complex grid — Align nested content across repeated cards.
- Logical properties and writing modes — Support different text directions and layouts.
- CSS architecture — Keep styles understandable as a project grows.
- Modern CSS functions and rules — Use built-in CSS tools before adding complexity.
- Progressive enhancement — Make core content work when advanced styles are unavailable.
- Browser developer tools — Diagnose layout and cascade problems systematically.
- Cross-browser and device testing — Check real behavior across environments.
- Performance and Core Web Vitals — Reduce the cost of rendering a page.
- SEO and document quality — Help search and sharing tools understand content.
- Security and safe HTML — Avoid common mistakes when handling links and embeds.
- Design systems and tokens — Build consistent reusable visual rules.
- Code review and documentation — Make decisions legible to other developers.
- Git and deployment basics — Track and publish static web work.
- Building from a design — Translate a visual design into robust HTML and CSS.
- Content-first responsive strategy — Handle unpredictable real-world content.
- Component API thinking — Design components with clear states and variations.
- Accessibility audit and remediation — Turn findings into concrete fixes.
- Performance audit and optimization — Prioritize improvements using measurements.
- Maintainability refactor — Improve a growing stylesheet without changing behavior.
- Capstone multi-page site — Deliver a complete accessible responsive site.
- Portfolio and senior review — Explain and defend implementation choices.
- Build semantic pages with sensible headings, links, media, tables, and forms.
- Create responsive layouts with normal flow, Flexbox, Grid, and container queries.
- Explain the cascade, specificity, inheritance, and how to debug them.
- Support keyboard use, focus visibility, zoom, contrast, and reduced motion.
- Test across browsers and screen sizes, then fix measured accessibility and performance issues.
- Document reusable components and explain layout, accessibility, and performance choices.
Complete the eight milestone project briefs, one after each phase. The final project is a multi-page website with an accessibility audit, performance measurements, and a case study.
Use the field reference while practicing, the phase review questions to check understanding, and the assessment rubric to judge your progress. Finishing the reading alone is not evidence of senior-level skill; the capstone and review work provide that evidence.