freecoding.school100% FREE · NO SIGNUP
Input HarborISSUE #46 of 46

examples · exercises · quiz · certificate

FormaVSCaptain Invalid Input
Forma saysYou’ve covered HTML end to end — now prove it by building one page that uses everything at once.

HTML sticks when you build, not just read. The capstone: combine a semantic layout (header/nav/main/footer), a labeled form with validation, a responsive image, a data table, and at least one accessibility touch into a single coherent page.

That exercise proves you can structure a real document — which is the whole job of HTML. From here, CSS makes it beautiful and JavaScript makes it move. You're ready for both. The example below is a starter scaffold; extend it.

Power-ups you unlock

Captain Invalid Input attacks — common mistakes

Boss battleBuild a profile-card page: a <header> with an <h1>, a responsive <img>, a labeled contact <form> with a required email, and a small <table> of facts.

Example code

<!doctype html>
<html lang="en">
<head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><title>capstone</title></head>
<body style="background:#06040d;color:#e6e0ff;font-family:sans-serif;padding:20px;max-width:600px;margin:auto">
  <header><h1 style="color:#b388ff">Your Name</h1></header>
  <nav aria-label="primary"><a href="#about">about</a> · <a href="#contact">contact</a></nav>
  <main>
    <img src="https://via.placeholder.com/120" alt="profile photo" width="120" height="120" style="border-radius:50%">
    <section id="about"><h2>about</h2><p>builder, in training.</p></section>
    <table><caption>facts</caption>
      <tr><th>role</th><td>student</td></tr>
      <tr><th>focus</th><td>html</td></tr>
    </table>
    <form id="contact" action="#"><label>email <input type="email" required></label> <button>send</button></form>
  </main>
  <footer style="color:#8a82b0;font-size:12px;margin-top:20px">built with everything in chapter 1–9</footer>
</body></html>
▶ Open the interactive comic issue
‹ Character Entities · The Full Table