HTML Basics
HTML Basics
Previous
Overview: Getting started with the web
Next
So what is HTML?
HTML is a markup language that defines the structure of your content. HTML consists
of a series of elements, which you use to enclose, or wrap, different parts of the
content to make it appear a certain way, or act a certain way. The enclosing tags can
make a word or image hyperlink to somewhere else, can italicize words, can make
the font bigger or smaller, and so on. For example, take the following line of content:
1. The opening tag: This consists of the name of the element (in this case, p),
wrapped in opening and closing angle brackets. This states where the
element begins or starts to take effect — in this case where the paragraph
begins.
2. The closing tag: This is the same as the opening tag, except that it includes
a forward slash before the element name. This states where the element ends
— in this case where the paragraph ends. Failing to add a closing tag is one of
the standard beginner errors and can lead to strange results.
3. The content: This is the content of the element, which in this case, is just text.
4. The element: The opening tag, the closing tag, and the content together
comprise the element.
Elements can also have attributes that look like the following:
Attributes contain extra information about the element that you don't want to
appear in the actual content. Here, class is the attribute name and editor-note is
the attribute value. The class attribute allows you to give the element a non-unique
identifier that can be used to target it (and any other elements with the
same class value) with style information and other things.
1. A space between it and the element name (or the previous attribute, if the
element already has one or more attributes).
2. The attribute name followed by an equal sign.
3. The attribute value wrapped by opening and closing quotation marks.
Note: Simple attribute values that don't contain ASCII whitespace (or any of the
all attribute values, as it makes the code more consistent and understandable.
Nesting elements
You can put elements inside other elements too — this is called nesting. If we
wanted to state that our cat is very grumpy, we could wrap the word "very" in
a <strong> element, which means that the word is to be strongly emphasized:
You do however need to make sure that your elements are properly nested. In the
example above, we opened the <p> element first, then the <strong> element;
therefore, we have to close the <strong> element first, then the <p> element. The
following is incorrect:
The elements have to open and close correctly so that they are clearly inside or
outside one another. If they overlap as shown above, then your web browser will try
to make the best guess at what you were trying to say, which can lead to unexpected
results. So don't do it!
Empty elements
This contains two attributes, but there is no closing </img> tag and no inner content.
This is because an image element doesn't wrap content to affect it. Its purpose is to
embed an image in the HTML page in the place it appears.
That wraps up the basics of individual HTML elements, but they aren't handy on their
own. Now we'll look at how individual elements are combined to form an entire
HTML page. Let's revisit the code we put into our index.html example (which we first
met in the Dealing with files article):
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>My test page</title>
</head>
<body>
<img src="images/firefox-icon.png" alt="My test image">
</body>
</html>
Copy to Clipboard
Images
Let's turn our attention to the <img> element again:
As we said before, it embeds an image into our page in the position it appears. It
does this via the src (source) attribute, which contains the path to our image file.
We have also included an alt (alternative) attribute. In this attribute, you specify
descriptive text for users who cannot see the image, possibly because of the
following reasons:
1. They are visually impaired. Users with significant visual impairments often use
tools called screen readers to read out the alt text to them.
2. Something has gone wrong causing the image not to display. For example, try
deliberately changing the path inside your src attribute to make it incorrect. If
you save and reload the page, you should see something like this in place of
the image:
The keywords for alt text are "descriptive text". The alt text you write should provide
the reader with enough information to have a good idea of what the image conveys.
In this example, our current text of "My test image" is no good at all. A much better
alternative for our Firefox logo would be "The Firefox logo: a flaming fox surrounding
the Earth."
Try coming up with some better alt text for your image now.
Marking up text
This section will cover some of the essential HTML elements you'll use for marking up
the text.
Headings
Heading elements allow you to specify that certain parts of your content are
headings — or subheadings. In the same way that a book has the main title, chapter
titles, and subtitles, an HTML document can too. HTML contains 6 heading
levels, <h1> - <h6>, although you'll commonly only use 3 to 4 at most:
ignores comments as it renders the code. In other words, they are not visible on the
page - just in the code. HTML comments are a way for you to write helpful notes
Now try adding a suitable title to your HTML page just above your <img> element.
Note: You'll see that your heading level 1 has an implicit style. Don't use heading
Paragraphs
Add your sample text (you should have it from What will your website look like?) into
one or a few paragraphs, placed directly below your <img> element.
Lists
A lot of the web's content is lists and HTML has special elements for these. Marking
up lists always consists of at least 2 elements. The most common list types are
ordered and unordered lists:
1. Unordered lists are for lists where the order of the items doesn't matter, such
as a shopping list. These are wrapped in a <ul> element.
2. Ordered lists are for lists where the order of the items does matter, such as a
recipe. These are wrapped in an <ol> element.
Each item inside the lists is put inside an <li> (list item) element.
For example, if we wanted to turn the part of the following paragraph fragment into
a list
<ul>
<li>technologists</li>
<li>thinkers</li>
<li>builders</li>
</ul>
Links
Links are very important — they are what makes the web a web! To add a link, we
need to use a simple element — <a> — "a" being the short form for "anchor". To
make text within your paragraph into a link, follow these steps:
Copy to Clipboard
Copy to Clipboard
6. Fill in the value of this attribute with the web address that you want the link to
link to:
7. <a href="https://www.mozilla.org/en-US/about/manifesto/">Mozilla
Manifesto</a>
Copy to Clipboard
for hypertext reference.
Add a link to your page now, if you haven't already done so.
Conclusion
If you have followed all the instructions in this article, you should end up with a page
that looks like the one below (you can also view it here):