Skip to Content
0 likes
Make a Button Do Something With addEventListener Level: Beginner

Find the button, attach a listener, change something on the page when it's clicked. Three steps, and two mistakes that make it silently do nothing.

0 likes
Find a Retained Detached DOM Node With Heap Snapshots Level: Advanced

Trace a detached preview from its DOM node to an application Map, repair cleanup, and verify repeated open-and-close cycles with heap snapshots.

0 likes
Find the Slow Function With Chrome's Performance Profiler Level: Advanced

Record one slow click in Chrome's Performance panel, read the Bottom-up tab by self time, fix the function it points at, and record again to prove the fix worked.

0 likes
Fix a Blank Page When Your HTML File Won't Open Right Level: Beginner

Your HTML file opens blank, shows as text, or downloads instead of rendering. Check the extension, the file:// open path, the doctype and a missing closing tag before you rewrite the page.

0 likes
The CSS Box Model in 15 Minutes Level: Beginner

Measure two boxes with the same declared width, calculate padding and border, and reproduce the 100% width overflow mistake before fixing it.

0 likes
Center Something Without Copy-Pasting Stack Overflow Level: Beginner

Compare text alignment, a centred block and two-axis child placement, then test why centering needs available space.

0 likes
Classes vs IDs: Stop Overusing #id for Styling Level: Beginner

Diagnose an ID rule that defeats a reusable note modifier, then keep the ID for navigation while moving presentation to classes.

0 likes
Change Colors and Fonts Without Touching Every Tag Level: Beginner

Set a shared typography base, trace inherited colours and remove a local override without restyling every paragraph.

0 likes
Read Computed Styles in DevTools Without Guessing Level: Beginner

Trace a reproducible colour and spacing conflict from the rendered result to the winning rule, then verify the repair in the source file.

0 likes
Build a Contact Form With Labels Stuck to Their Inputs Level: Beginner

Build a local form with working labels and a grouped topic choice, then inspect submitted field names without sending a message.

0 likes
Images With alt Text That Isn't Useless Level: Beginner

Choose different text alternatives for informative, decorative and linked images, then inspect their names and broken-image behavior.

0 likes
Links That Open Where You Meant Them To Level: Beginner

Build a three-file local site, resolve paths from nested folders and test fragments and deliberate new-tab navigation.