HTML Elements
An HTML element is everything from the start tag to the end tag:
| Start tag * | Element content | End tag * |
| <p> | This is a paragraph | </p> |
| <a href="/default.htm" > | This is a link | </a> |
| <br /> | | |
* The start tag is often called the
opening tag. The end tag is often called the
closing tag.
HTML Element Syntax
- An HTML element starts with a start tag / opening tag
- An HTML element ends with an end tag / closing tag
- The element content is everything between the start and the end tag
- Some HTML elements have empty content
- Empty elements are closed in the start tag
- Most HTML elements can have attributes
(You will learn about element attributes in
the next chapter of this tutorial)
Nested HTML Elements
Most HTML elements can be nested (can contain other HTML elements).
HTML documents consist of nested HTML elements.
HTML Document Example
<html> <body>
<p>This is my first paragraph</p> </body>
</html>
|
The example above contains 3 HTML elements.
Example Explained
The <p> element:
<p>This is my first paragraph</p> |
The <p> element defines a paragraph in the HTML document
The element has a start tag <p> and an end tag </p>
The element content is: This is my first paragraph
The <body> element:
<body> <p>This is my first paragraph</p>
</body> |
The <body> element defines the body of the HTML document
The element has a start tag <body> and an end tag </body>
The element content is another HTML element (a paragraph)
The <html> element:
<html> <body> <p>This is my first paragraph</p> </body> </html> |
The <html> element defines the whole HTML document.
The element has a start tag <html> and an end tag </html>
The element content is another HTML element (the body)
Don't Forget the End Tag
Most browsers will display HTML correctly even if you forget the end tag:
<p>This is a paragraph <p>This is a paragraph |
The example above will work in most browsers, but don't rely on it. Forgetting the end tag can
produce unexpected results or errors.
Note: Future version of HTML will not allow you to skip end tags.
Empty HTML Elements
HTML elements without content are called empty elements. Empty elements can be closed in the start tag.
<br> is an empty element without a closing tag (it defines a line break).
In XHTML, XML, and future versions of HTML,
all elements must be closed.
Adding a slash to the start tag, like <br />, is the proper way of closing empty elements, accepted by HTML, XHTML and XML.
Even if <br> works in all browsers, writing <br /> instead is more future proof.
HTML Tip: Use Lowercase Tags
HTML tags are not case sensitive: <P> means the same as <p>. Plenty of web sites use uppercase HTML tags in their pages.
W3Schools use lowercase tags because the
World Wide Web Consortium (W3C)
recommends lowercase in HTML 4, and
demands lowercase tags in future versions of (X)HTML.
HTML Attributes
- HTML elements can have attributes
- Attributes provide additional information about the element
- Attributes are always specified in the start tag
- Attributes come in name/value pairs like: name="value"
Attribute Example
HTML links are defined with the <a> tag.
The link address is provided as an attribute:
<a href="http://www.YourSite.com">This is a link</a>
Always Quote Attribute Values
Attribute values should always be enclosed in quotes.
Double style quotes are the most common, but single style quotes are also allowed.
In some rare situations, like when the attribute value itself contains quotes, it is necessary to use single quotes:
name='John "ShotGun" Nelson'
HTML Tip: Use Lowercase Attributes
Attribute
names and attribute values are case-insensitive.
However, the World Wide Web Consortium (W3C) recommends lowercase attributes/attribute values in their HTML 4 recommendation
Newer versions of (X)HTML will demand lowercase attributes.
HTML Attributes Reference
A full list of legal attributes for each HTML element is listed in our:
Complete HTML Reference
Below is a list of some attributes that are standard for most HTML elements:
| Attribute | Value | Description |
| class | class_rule or style_rule | The class of the element |
| id | id_name | A unique id for the element |
| style | style_definition | An inline style definition |
| title | tooltip_text | A text to display in a tool tip |
For more information about standard attributes:
HTML Standard Attributes Reference