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.
How events travel through the DOM, stopping propagation, and handling many elements with one listener.
Why JavaScript is asynchronous, callback functions, and the problems that led to promises.
Create and consume promises, chaining with then, error handling with catch, and finally.
Write asynchronous code that reads top to bottom, handle errors with try and catch, and run tasks in parallel.
Request JSON from an API with fetch, check response status, and show loading and error states.
Read error messages, log effectively, set breakpoints and step through code in browser DevTools.
Split code into modules with named and default exports, use modules in the browser, and dynamic import.
Global, function and block scope, hoisting of declarations, and why let and const throw before declaration.
Throw and catch errors, error types, custom error classes, and handling async errors.
How functions remember their surrounding scope, practical uses, and common closure bugs.
Class syntax, constructors, methods, private fields, static members and extends.
How this is decided at call time, in methods, callbacks, arrow functions and with bind, call and apply.
Create and combine strings, template literals, and everyday string methods.
The template element and slots as the HTML foundation for Web Components.
Number behaviour, floating-point surprises, parsing numbers, rounding and the Math object.
Control how the browser fetches resources with resource hints and script loading attributes.
Make decisions with if and else, truthy and falsy values, switch and the ternary operator.
Repeat work with each loop type, break and continue, and which loop suits arrays and objects.
Define and call functions, default parameters, return values and function expressions.
Arrow function syntax, implicit returns, and how arrows differ from regular functions.