以下是第一部分:
参考资料:
w3.org, html 文档
HTML,即Hypertext markup language是万维网的核心标记语言,最初HTML被设计作为一门语言,用于语言描述科学文档,后续则被拓展用于描述一系列不同类型的文档,甚至应用。
1990-1995,迅速发展,从CERN到IETF(国际互联网工作组)接管.
1995-1997, 随着W3C建立,又变成由W3C主导,期间推出了HTML 3.2 和HTML 4.01
1998-2000,W3C停止HTML版本推进,开始研究XHTML 1.0(XML-based HTML 4.01), 其没有添加任何新特性,反而更加地长篇累牍,更严格的检测标准等。后续发布了XHTML 2.0,其与XHTML 1.0,HTTP 4.01不兼容。
期间直到2003,HTML没有版本的变化,但期间出现了 DOM Level 1 &2,提高了客户端的使用体验以及功能拓展。
2003,XForms(定位于下一代Web form)发布,其证明了很多它所拥有的新特性能拓展到HTML 4.01,Mozilla及Opera借此于2004年向W3C提出了更新HTML版本的提议,但W3C选择继续发展XML-based作为替代HTML。
于是Mozilla, Opera联合Apple组成新实体WHATWG,发展HTML 的Living document,对HTML继续进行拓展及新特性添加,直到后期W3C才转回HTML标准的制定,多谢WHATWG,才有了我们今天基本采用的HTML 5。
W3C与WHATWG于2008年一起发布了第一份草案,2014年正式发布HTML 5。
*MDN Web Docs 简介:Mozilla Developer Network的后续,致力于Web标准文档的发展以及Web开发资料分享,包括HTML5, JavaScript, CSS, Web APIs, Node.js以及网络扩展等
*HTML/XML/DOM等的语法上的一些区别:
namespaces不能用在HTML语法中,但可用作DOM及XHTML里;
<noscript>可被用在HTML里,但不能用在DOM,XHTML里,
-->仅仅能用在DOM里。
*Text: in the context of content models, means either nothing, or Text nodes. Text is sometimes used as a content model on its own, but is also phrasing content, and can be inter-element white space
Text nodes and attribute values must consist of Unicode characters
*<html>end tag, <head>start tag, end tag, <body>start tag, end tag等在满足一定条件情况下可以省略,更多可以省略的可以参考 这里 。
*块级及内联元素
块级元素会以可见的块呈现在页面上,其显示会与其前后的content有一行的间距,常用于呈现结构化的elements,如paragraph, list, nav, footer等,块级元素不能被内嵌在内联元素之中,块通常只出现在<body>里。
内联元素是包含在块里的,仅仅只包含一小部分内容,常呈现在段落里,如<a>, <em>, <strong>等。其存在将不会导致新的一行的产生。
注意可以使用css display 属性,设置inline为block。
*HTML parsing model
*<audio>, <canvas>, <embed>, <iframe>, 及MathTL, SVG里的元素为embeded元素
*元素是大小写不敏感的
header: 标签定义文档的页眉section:定义文档中的节
footer:定义文档或节的页脚
aside:定义其所处内容之外的内容//可用作文章的侧栏
nav:定义导航链接的部分//果文档中有“前后”按钮,则应该把它放到 <nav>元素中
main:规定文档的主要内容//在一个文档中,不能出现一个以上的 <main>元素。<main>元素不能是以下元素的后代:<article>、<aside>、<footer>、<header>或 <nav>
article:规定独立的自包含内容
figure:规定独立的流内容(图像、图表、照片、代码等等)//使用<figcaption>为<figure>定义标题,置于 "figure" 元素的第一个或最后一个子元素的位置
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)