Stop 03 · CSS3Projects · 3/4

Landing Pages

Part of the Frontend Developer Roadmap

In short

A landing page has one job: get the visitor to do one thing, like sign up or download. Building a few teaches layout, typography and responsive design all together.

Marketing-style single pages (hero, features, pricing, testimonials, CTA) — the most common real-world layout you'll build as a frontend developer. A realistic landing page should balance visual hierarchy with semantic HTML, accessibility, responsive behavior, performance, and clear conversion paths.

The jaadu mascot holds a bright pamphlet with one big button shape, about to slip it into a newspaper.

Think of it like this

A coaching centre pamphlet

Those pamphlets slipped into your newspaper have a big headline, a few results, some photos and a phone number in bold at the bottom. A landing page is the same: one promise, some proof, and one clear button.

Watch it happen

One visitor, one goal

Visitor
Hero
Signup form
Server

lands on the page

1/6A visitor arrives from a link and sees the hero first.

The big ideas

What you need to know

One clear action

Every section should push towards the same main button, like 'Start free'. Too many choices confuse people.

Standard sections

Hero, features, how it works, testimonials, pricing or FAQ, then a final call to action and footer.

Typography carries it

A strong headline size, readable body text and plenty of white space matter more than fancy effects.

Fast on mobile

Compress images, lazy-load anything below the first screen and keep the hero light.

How it works

Build plan

  1. 1

    Write the copy

    Headline, subheading, three features and the main button text before any code.

  2. 2

    Hero section

    Headline, subheading, button and one image, centred on mobile.

  3. 3

    Feature grid

    Three or four feature cards with icons using auto-fit Grid.

  4. 4

    Proof and FAQ

    Testimonials and an FAQ with <details> elements.

  5. 5

    Final CTA and deploy

    Repeat the button near the bottom, run Lighthouse and deploy.

See it in code

Walk through the code

html
1<section class="hero">2  <h1>Crack your first internship in 90 days</h1>3  <p>Weekly mentor calls, real projects and mock interviews.</p>4  <a class="btn" href="#signup">Start free</a>5</section>6 7<style>8  .hero {9    display: grid;10    place-items: center;11    text-align: center;12    gap: 1rem;13    padding: clamp(3rem, 10vw, 8rem) 1rem;14  }15  .hero h1 { font-size: clamp(2rem, 6vw, 4rem); max-width: 20ch; }16</style>

1/4One headline, one supporting line, one clear button.

place-items: center centres everything in one line, and clamp keeps the headline and padding sensible from phone to big screen.

Save yourself the pain

Common mistakes

Oops

Five different buttons in the hero: Sign up, Learn more, Watch video, Contact, Pricing.

Do this instead

One main button, maybe one quieter secondary link. Make the next step obvious.

Oops

A 3 MB hero image that loads last.

Do this instead

Compress it, use WebP or AVIF and set width and height so the layout doesn't jump.

Your mission

First milestone: hero and features

~40 min

Quick check

What does display: grid; place-items: center; do to a hero's children?

Go deeper

  1. 1Build 2-3 different landing pages with distinct hero and pricing-section layouts. Keep the first version small, then add one improvement after the core behavior works.
  2. 2Practice making every section responsive down to mobile width. Test it with at least one normal case and one edge case so you can explain the behavior confidently.
  3. 3Focus on visual hierarchy — spacing, font size and contrast guiding the eye.

More projects at this stop

Stuck on this topic? Ask an Insider

Get 1:1 guidance from people who've walked this exact path — on the InsideEdge app.

Download
InsideEdge