Sunday, 06 September 2026
Advertisement Advertise Your advert could be here Reach thousands of learners and ICT professionals across Rwanda. Contact us
Advertisement Opportunity Jobs, scholarships & hackathons Fresh openings from Rwandan job boards are pulled in every hour. See openings

What HTML is and how a page is structured

Web foundations: HTML & CSS · lesson 1 of 11

In this lesson: Understand what HTML does and write a complete, valid page.

HTML stands for HyperText Markup Language. It is not a programming language — it has no logic, no loops and no calculations. Its only job is to describe what each piece of content is: this is a heading, this is a paragraph, this is an image.

The browser reads that description and decides how to display it. Your job as the author is to label the content honestly and let CSS handle the appearance.

A complete HTML page

Every page follows the same skeleton. Type this into a file called index.html and open it in a browser:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>My first page</title>
</head>
<body>
  <h1>Hello, Rwanda</h1>
  <p>This is my first web page.</p>
</body>
</html>

What each part does

  • <!DOCTYPE html> — tells the browser to use modern standards. Always the first line.
  • <html lang="en"> — wraps the whole document. The lang attribute helps screen readers and search engines.
  • <head> — information about the page: its character encoding, its title, links to stylesheets. None of this is displayed in the page area.
  • <body> — everything the visitor actually sees.
The one rule to remember: the <head> is metadata, the <body> is content. If you cannot see something you added, check whether you accidentally put it in the head.

The viewport line matters

That <meta name="viewport"> line tells phones to render the page at their real width instead of pretending to be a desktop and zooming out. Leave it out and your site will look tiny on a phone. It is one line and it is not optional in 2026.

Try it yourself

Create the file above, change the heading to your own name, save, and refresh the browser. That loop — edit, save, refresh — is the whole of front-end development.

Create a free account to save progress

All lessons in this track

  1. 1
  2. 2
  3. 3
  4. 4
    Links and images ~20 min account needed
  5. 5
    Lists and tables ~20 min account needed
  6. 6
    Forms and input types ~30 min account needed
  7. 7
    Introduction to CSS ~15 min account needed
  8. 8
    Selectors: how to target elements ~25 min account needed
  9. 9
  10. 10
    Flexbox layout ~30 min account needed
  11. 11
    Responsive design and media queries ~30 min account needed
Advertisement Yanjye Learn a new digital skill this week ICT, programming and professional courses with graded weekly assignments. Start free