Why Learn HTML?
HTML is the foundation of all web pages. Without HTML, you wouldn’t be able to organize text or add images or videos to your web pages. HTML is the beginning of everything you need to know to create engaging web pages!
- Elements and Structure
HTML (HyperText Markup Language) is used to give content to a web page and instructs web browsers on how to structure that content.
Element Content
<h1>Hello world! 🙂</h1>
The content of an HTML element is the information between the opening and closing tags of an element.
<li>
List Item Element
<ol>
<li>Head east on Prince St</li>
<li>Turn left on Elizabeth</li>
</ol>
<ul>
<li>Cookies</li>
<li>Milk</li>
</ul>
The <li>
list item element create list items inside:
- Ordered lists
<ol>
- Unordered lists
<ul>
<video>
Video Element
<video src="test-video.mp4" controls>
Video not supported
</video>
The <video>
element embeds a media player for video playback. The src
attribute will contain the URL to the video. Adding the controls
attribute will display video controls in the media player.
Note: The content inside the opening and closing tag is shown as a fallback in browsers that don’t support the element.
<em>
Emphasis Element
<p>This <em>word</em> will be emphasized in italics.</p>
The <em>
emphasis element emphasizes text and browsers will usually italicize the emphasized text by default.
<ol>
Ordered List Element
<ol>
<li>Preheat oven to 325 F 👩🍳</li>
<li>Drop cookie dough 🍪</li>
<li>Bake for 15 min ⏰</li>
</ol>
The <ol>
ordered list element creates a list of items in sequential order. Each list item appears numbered by default.
<div>
Div Element
<div>
<h1>A section of grouped elements</h1>
<p>Here’s some text for the section</p>
</div>
<div>
<h1>Second section of grouped elements</h1>
<p>Here’s some text</p>
</div>
The <div>
element is used as a container that divides an HTML document into sections and is short for “division”. <div>
elements can contain flow content such as headings, paragraphs, links, images, etc.
HTML Structure
<body>
<div>
<h1>It's div's child and body's grandchild</h1>
<h2>It's h1's sibling</h2>
</div>
</body>
HTML is organized into a family tree structure. HTML elements can have parents, grandparents, siblings, children, grandchildren, etc.
Closing Tag
<body>
...
</body>
An HTML closing tag is used to denote the end of an HTML element. The syntax for a closing tag is a left angle bracket <
followed by a forward slash /
then the element name and a right angle bracket to close >
.
Attribute Name and Values
<elementName name="value"></elementName>
HTML attributes consist of a name and a value using the following syntax: name="value"
and can be added to the opening tag of an HTML element to configure or change the behavior of the element.
<br>
Line Break Element
A line break haiku.<br>
Poems are a great use case.<br>
Oh joy! A line break.
The <br>
line break element will create a line break in text and is especially useful where a division of text is required, like in a postal address. The line break element requires only an opening tag and must not have a closing tag.
<img>
Image Element
<img src="image.png">
HTML image <img>
elements embed images in documents. The src
attribute contains the image URL and is mandatory. <img>
is an empty element meaning it should not have a closing tag.
<h1>
–<h6>
Heading Elements
<h1>Breaking News</h1>
<h2>This is the 1st subheading</h2>
<h3>This is the 2nd subheading</h3>
<h4>This is the 3nd subheading</h4>
<h5>This is the 4th subheading</h5>
<h6>This is the 5th subheading</h6>
HTML can use six different levels of heading elements. The heading elements are ordered from the highest level <h1>
to the lowest level <h6>
.
<p>
Paragraph Element
<p>This is a block of text! Lorem ipsum dolor sit amet, consectetur adipisicing elit.</p>
The <p>
paragraph element contains and displays a block of text.
Unique ID Attributes
<h1 id="A1">Hello World</h1>
In HTML, specific and unique id
attributes can be assigned to different elements in order to differentiate between them.
When needed, the id
value can be called upon by CSS and JavaScript to manipulate, format, and perform specific instructions on that element and that element only. Valid id
attributes should begin with a letter and should only contain letters (a-Z
), digits (0-9
), hyphens (-
), underscores (_
), and periods (.
).
HTML Attributes
<p id="my-paragraph" style="color: green;">Here’s some text for a paragraph that is being altered by HTML attributes</p>
HTML attributes are values added to the opening tag of an element to configure the element or change the element’s default behavior. In the provided example, we are giving the <p>
(paragraph) element a unique identifier using the id
attribute and changing the color of the default text using the style
attribute.
<ul>
Unordered List Element
<ul>
<li>Play more music 🎸</li>
<li>Read more books 📚</li>
</ul>
The <ul>
unordered list element is used to create a list of items in no particular order. Each individual list item will have a bullet point by default.
alt
Attribute
<img src="path/to/image" alt="text describing image" />
An <img>
an element can have alternative text via the alt attribute. The alternative text will be displayed if an image fails to render due to an incorrect URL if the image format is not supported by the browser, if the image is blocked from being displayed, or if the image has not been received from the URL.
The text will be read aloud if screen reading software is used and helps support visually impaired users by providing a text descriptor for the image content on a webpage.
<body>
Body Element
<body>
<h1>Learn to code with Codecademy :)</h1>
</body>
The <body>
element represents the content of an HTML document. Content inside <body>
tags are rendered on the web browsers.
Note: There can be only one <body>
element in a document.
<span>
Span Element
<p><span>This text</span> may be styled differently than the surrounding text.</p>
The <span>
element is an inline container for text and can be used to group text for styling purposes. However, as <span>
is a generic container to separate pieces of text from a larger body of text, its use should be avoided if a more semantic element is available.