HTML Complete Course
Build semantic, accessible web pages from your first file to native dialogs, safe embeds and fast loading.
- Beginner
- 25 lessons
- 10 hours
Build semantic, accessible web pages from your first file to native dialogs, safe embeds and fast loading.
Style and lay out modern websites, from your first rule to cascade layers, Grid and scroll-driven animation.
Build pages that work on every screen, from a 320 pixel phone to a wide desktop monitor.
Build and test websites that disabled people can use, from alt text to WCAG 2.2 audits.
Learn modern JavaScript from your first script to closures, async code, modules and the event loop, with projects you build as you go.
Patterns from the ARIA Authoring Practices Guide for comboboxes and data grids, and making charts understandable.
Run axe and Lighthouse, read their results, and know the large share of issues only manual testing finds.
Start NVDA or VoiceOver, navigate by headings, landmarks and forms, and note what to listen for.
What WCAG requires for audio and video, writing captions and transcripts, and avoiding autoplay problems.
Use the dialog element for modals: focus moves in and back, Escape closes, the background is inert.
Build show-hide components and tabs with the right markup, keyboard support and ARIA states.
Site navigation and dropdowns that work by keyboard and screen reader, and why app-style menu roles are usually wrong.
Tell screen reader users about updates such as search results, saved messages and errors with live regions and status roles.
Why motion can make people unwell, WCAG motion criteria, and implementing prefers-reduced-motion properly.
Announce route changes, move focus to new content and keep titles updated in client-rendered apps.
Scope an audit, combine automated and manual testing, record issues against WCAG, and prioritise fixes.
Write base styles for small screens and enhance for larger ones with min-width queries.
Make every control reachable and operable by keyboard, keep a logical focus order, and style focus visibly.
Media query syntax, range syntax, and querying user preferences such as dark mode and reduced motion.
Add skip links, move focus deliberately after actions, and avoid focus traps and lost focus.
Serve the right image size and format for each screen with srcset, sizes and the picture element.
How assistive technology names controls, the naming order, and fixing unlabelled icon buttons.
Scale type and spacing smoothly between screen sizes with clamp(), and keep text zoomable.
Labels, hints, required fields, grouped controls and error messages that everyone can find and fix.
Intrinsic layouts that adapt by themselves with flex-wrap, auto-fit and minmax().