作业帮 > HTML > 教育资讯

HTML教程:深入了解HTML5标准结构

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/15 18:12:08 HTML
HTML教程:深入了解HTML5标准结构
HTML教程:深入了解HTML5标准结构HTML
【无忧考网-HTML教程:深入了解HTML5标准结构】:

一个标准的html结构都应该包含那些内容,一般人可能会这样回答:

一个DOCTYPE,一个html,里面有head和body元素。
这当然不能说是不正确的,但是如果问到一个最小的HTML源文件必须有哪一些东西的话,恐怕很少有人能正确地做出回答。

先来回答一下这个问题,一个最简的HTML5源码文件需要的内容如下:


是的,就这样,一个字符不多,一个字符不少,除了大小写可任意变化外,其他的任何内容都是不能变动的。

那么究竟是怎么样的规则,导致一个最简的源码文件必须有doctype声明呢?根据标准,一个HTML文档有如下内容组成(严格按照顺序):

•一个BOM标记,且这个BOM标记必须为U+FEFF。
•0-n个空格或注释。
•DOCTYPE声明。
•0-n个空格或注释。
•一个HTML元素。
•0-n个空格或注释。
这里存在着一些和HTML4的不同,一个HTML4的最简源码文件是这样的:

                      "http://www.w3.org/TR/html4/loose.dtd">
这里是标题
两者的区别是显而易见的:

•HTML5把DOCTYPE修改为更简单的,这个已经众所周知了。
•在HTML4中多了一个标签。<BR style="FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif">这里的重点就是<title>标签了,关于这个标签,在HTML4.01标准中是这么说的:</P><P style="FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif">Every HTML document must have a TITLE element in the HEAD section.<BR style="FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif">也即是说,HTML4要求<title>标签是必须存在的。</P><P style="FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif">而在HTML5的标准中,又是这么说的:</P><P style="FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif">There must be no more than one title element per document.<BR style="FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif">HTML5中只设定了<title>标签数量的上限,却没有指明下限,也就是说,没有<title>的文档已经被视为一个合法的文档了。</P><P style="FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif">对于DOCTYPE,HTML4中设定了6种DOCTYPE,HTML5中将DOCTYPE分为3种,这个在以后的章节中再具体说明。</P><P style="FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif">再回过来看一下文档组成,除去“0-n个空格或注释”这样并没有多大意义的元素之外,组成的列表中还说明有一个HTML元素,但是最简的源码中却没有这东西。这是因为在HTML的规范中,一直存在“隐式标签”这样的概念,关于隐式标签,大致可以这么解释:</P><P style="FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif">一部分元素,当满足特定的前提条件时,其开始标签或结束标签可以在源码中省略。在这种情况下,被省略的标签称为“隐式标签”。<BR style="FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif">需要注意的是,此处的省略指的是在源码中省略,而在最终成型的DOM树中,这个标签是存在的,因此才称为隐式标签。因此上面最简的源码结构,在生成DOM树后,其真正的结构是这样的:</P><P style="FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif"><!DOCTYPE html><BR style="FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif"><html><BR style="FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif">    <head></head><BR style="FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif">    <body></body><BR style="FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif"></html><BR style="FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif">最后,再总结一下XHTML中的一些规范:</P><P style="FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif">•因为是XML,所以为了表示这是一个HTML文档,必须有一个命名空间,其值为http://www.w3.org/1999/xhtml。<BR style="FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif">•因为是XML,所以MIME type不能是text/html了,text/xml、application/xml、application/xml+html都是比较好的选择。<BR style="FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif">•因为是XML,必须有根元素,根元素为<html>,即<html>的开始和结束标签不能省略了。<BR style="FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif">•因为是XML,所有元素只要有了开始标签,就不能没有结束标签,或者自闭合。<BR style="FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif">•因为是XML,所有元素都得严格遵守大小写,元素名称必须为小写。<BR style="FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif">因为是XML,文档变得严格了很多,也因为是XML,其可读性和规范性提高了不少。但最终,我们始终要在HTML的宽容性和XML的规范性之间找到最佳的平衡点,一味地追求极端始终是一个错误。</P></SPAN></SPAN><a href="/news/list/215/1">HTML</a></div> </div> </div> </div> </main> <aside class="col-md-4 sidebar"> <div class="widget"> <h4 class="title">热点作业</h4> <div class="content tag-cloud"> <a href="/focus/143015">如果增加两台机器,只需要用规定时间的7/8就可完成</a> <a href="/focus/143014">求方程y\'=y^2e^-x的通解</a> <a href="/focus/143013">他对自己能否学好电脑,充满了信心</a> <a href="/focus/143012">Mayihavethismilk</a> <a href="/focus/143011">3的2x-1=243</a> <a href="/focus/143010">3^2x-1=243</a> <a href="/focus/143009">小学数学</a> <a href="/focus/143008">如果輸入53</a> <a href="/focus/143007">甲和乙</a> <a href="/focus/143006">阿拉伯半岛、印度半岛所在的板块是()板块.</a> </div> </div> <div class="widget"> <h4 class="title">作业帮手</h4> <div class="content tag-cloud"> <a href="/focus/92148">伊丽莎白女王二世身高</a> <a href="/focus/92149">伊莎贝拉二世</a> <a href="/focus/92150">优越香格里二期</a> <a href="/focus/92151">会宁二中质检成绩</a> <a href="/focus/92152">会弹会戴帽子的熊二</a> <a href="/focus/92153">会计专业大学排名二本</a> <a href="/focus/92154">传奇世界二战法pk视频</a> <a href="/focus/92155">传奇幻境二层地图</a> <a href="/focus/92156">传奇永恒海二任务</a> <a href="/focus/92157">传奇永恒矿洞危机二</a> <a href="/focus/92158">传奇盛世幻境二层</a> <a href="/focus/92159">传统二十八式太极拳</a> <a href="/focus/92160">传说哥的故事二</a> </div> </div></aside> </div> </div> </section> <footer id="footer" class="footer hidden-print"> <div class="container"> <div class="panel panel-default"> <div class="panel-body footerlinks"> <a href="/zuoye/9628267" class="list-group-item col-md-6">有没有人上过土星和木星</a> <a href="/zuoye/9628268" class="list-group-item col-md-6">有没有人知道土星趣闻,麻烦告诉一下,谢.</a> <a href="/zuoye/9628269" class="list-group-item col-md-6">土星上为什么没有生命</a> <a href="/zuoye/9628270" class="list-group-item col-md-6">土星上有土吗?</a> <a href="/zuoye/9628271" class="list-group-item col-md-6">Dateawarded/expected</a> <a href="/zuoye/9628272" class="list-group-item col-md-6">expectedreceiptdate是</a> <a href="/zuoye/9628273" class="list-group-item col-md-6">某抽出式矿井在下列哪些地点发生火灾时,可</a> <a href="/zuoye/9628274" class="list-group-item col-md-6">外贸货运上arrivaldate和rec</a> <a href="/zuoye/9628275" class="list-group-item col-md-6">葬我以风下载</a> <a href="http://www.52pingyi.com/" class="list-group-item col-md-6">我爱平邑</a><a href="https://www.csdndocs.com/" class="list-group-item col-md-6">程序文库</a><a href="https:/ /www.b7pu.com/" class="list-group-item col-md-6">兵器谱</a> </div> </div> </div> <div class="copy-right"><p>百度一下老鹰作业网作业帮,作业帮习题。香蕉皮教育考试辅导作业共享,智慧之海香蕉皮作业帮忙</p></div> </footer> <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body> </html>