Introduction
In my quest to reform the web, I needed to make an HTML Authoring Tool. I, an author cum maker, need to think like a creator.
Both creators and authors think in contents. Our thought decides to create – for example – a heading, a subheading, and some plain paragraphs.
Authors, however, need to rethink in HTML. To create a subheading, authors need a p
element that must follow one of h1
, h2
, h3
, h4
, h5
, or h6
element in a hgroup
element.
Yet, learning resources explain HTML by elements-to-use before content-they-creates; whereas, Authors think by contents-to-create before elements-to-use ... a conflict of expectations.
Moreso, by HTML design, one element may be multi-purpose and still insufficient to markup one content.
Both challenges would make a learner struggle to find information and understand relationships of elements that markup a content. This could result to incorrect use of elements, loss in semantics, incompatibility with user agents, and, finally, bad experience for users at unexpected times.
HTML by Contents pioneers a total content-first HTML learning resource. It explains HTML by contents-to-create to align with an author's mind.
It introduces 10 Content Models to improve the partial hierarchy of the 7 Content Models recorded in the HTML Living Standard. Partial hierarchy because div
and p
belong to the Flow Content Model but p
allows phrasing contents while div
allows flow
contents.
The cover page provides you with a practical approach and a conceptual approach to using this resource.
Page 1, this page, introduces the new Content Models for HTML.
Page 2 relates the Content Root for the 2 sides of a web document
Page 3 provides the 33 Content Metas that go into the first side of the Content Root.
Page 4 reveals the 2 Content Windows that go into the second side of the Content Root.
Page 5 identifies the 14 Content Blocks that build a Content Window.
Page 6 provides the 8 Content Parts that bound the contents of a Topic Block
Page 7 conveys the 11 Content Mixes that creates compound content blocks
Page 8 introduces the 3 Content Breaks for partitions in a Block
Page 9 presents the 9 Content Objects for non-textual contents in a Block
Page 10 provides the 24 Content Forms to request contents in a Block
Page 11 relates the 29 Content Connotations for purpose definitions in a Block
Page 12 lists the 132 Content Attributes that modify HTML elements
Page 13 recommends a growing number of Content Guides that helps avoid future problems