HTML5 provides us with new and mostly semantic elements; it redefines
some existent elements and makes other elements obsolete (think of
“obsolete” as the new, politically correct version of “deprecated”). As we
saw in Chapter 2, we have the root
<html> element, document metadata described
<head> section, and
scripting elements. HTML5 provides us with sectioning elements, heading
elements, phrase elements, embedded elements, and interactive elements.
Interactive form elements are covered in Chapter 4.
The media-related embedded elements will be discussed in Chapter 5. We won’t discuss table
elements, since, for the most part, they haven’t changed in HTML5. The other
elements are discussed in the next section.
In prior specifications, elements were described as being either inline, for text-level semantics, or block, for flow content. HTML5 doesn’t use the terms block or inline to describe elements anymore. The HTML5 authors correctly assume that CSS is responsible for the presentation, and all browsers, including all mobile browsers, come with stylesheets that define the display of elements. So, while HTML5 no longer defines elements in terms of block or inline, the default user-agent stylesheets style some elements as block and others as inline, but the delineation has been removed from the specification.
With HTML5, we have most of the HTML 4 elements and the addition of a few new ones. HTML5 also adds several attributes and removes ...