作业帮 > HTML > 教育资讯

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

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/18 08:38:31 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/3793">破折号的作用有哪些</a> <a href="/focus/3794">关于大数的信息</a> <a href="/focus/3795">闲人免进贤人进</a> <a href="/focus/3796">远上寒山石径斜全诗</a> <a href="/focus/3797">毛泽东罪行</a> <a href="/focus/3798">世界上有哪些大峡谷</a> <a href="/focus/3799">大雾漫天</a> <a href="/focus/3800">我爱我的祖国 诗歌</a> <a href="/focus/3801">战争的诗词</a> <a href="/focus/3802">呼哈</a> <a href="/focus/3803">如何写按语</a> <a href="/focus/3804">不负众望不孚众望</a> <a href="/focus/3805">青山绿水下一句</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/95659" class="list-group-item col-md-6">几分之一加几分之一等于六分之一</a> <a href="/zuoye/95660" class="list-group-item col-md-6">1+5等于几分之几.在扩大33倍.</a> <a href="/zuoye/95661" class="list-group-item col-md-6">1又22分之9等于几分之几?5又33分之</a> <a href="/zuoye/95662" class="list-group-item col-md-6">一丶递等式计算七分之四加四分之一减十四分</a> <a href="/zuoye/95663" class="list-group-item col-md-6">520+52.8X5-3.9343÷0.</a> <a href="/zuoye/95664" class="list-group-item col-md-6">想一个它加52.8,乘5,减3.9343</a> <a href="/zuoye/95665" class="list-group-item col-md-6">浪漫短信先想一个数加52.8成以0.5然</a> <a href="/zuoye/95666" class="list-group-item col-md-6">心里想一个数字,用它加上52.8,再乘以</a> <a href="/zuoye/95667" class="list-group-item col-md-6">心里想一个数字,用它加上52.8,再乘以</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>