《HTML 5与CSS 3 权威指南(第3版·上册)》——2.1 语法的改变

2.1 语法的改变

2.1.1 HTML 5的语法变化

与HTML 4相比,HTML 5在语法上发生了很大的变化。可能很多人会因为“之前的HTML已经相当普及”,“如果改变基础语法,会产生什么影响”等想法而感到不安。
但是,HTML 5中的语法变化,与其他开发语言中的语法变化在根本意义上有所不同。它的变化,正是因为在HTML 5之前几乎没有符合标准规范的Web浏览器导致的。
HTML的语法是在SGML(Standard Generalized Markup Language)语言的基础上建立起来的。但是SGML语法非常复杂,要开发能够解析SGML语法的程序也很不容易,因此很多浏览器都不包含SGML的分析器。因此,虽然HTML基本上遵从SGML的语法,但是对于HTML的执行在各浏览器之间并没有一个统一的标准。
在这种情况下,各浏览器之间的互兼容性和互操作性在很大程度上取决于网站或网络应用程序的开发者在开发上所做的共同努力,而浏览器本身始终是存在缺陷的。
如上所述,在HTML 5中提高Web浏览器之间的兼容性是它的一个很大的目标,为了确保兼容性,就要有一个统一的标准。因此,在HTML 5中,围绕着这个Web标准,重新定义了一套在现有HTML的基础上修改而来的语法,以便各浏览器在运行HTML的时候能够符合一个通用标准。
因为关于HTML 5语法解析的算法也都提供了详细的记载,所以各Web浏览器的供应商可以把HTML 5分析器集中封装在自己的浏览器中。最新的Firefox(默认为4.0以后的版本)与WebKit浏览器引擎中都迅速地封装了供HTML 5使用的分析器,IE(Internet Explorer)与Opera也在努力加快对HTML 5的支持——提高浏览器的兼容性指日可待。
接下来,让我们具体看一下在HTML 5中对语法进行了哪些改变。

2.1.2 HTML 5中的标记方法

首先看一下HTML 5中的标记方法。
1.?内容类型(ContentType)
首先,HTML 5的文件扩展符与内容类型保持不变。也就是说,扩展符仍然为“.html”或“.htm”,内容类型(ContentType)仍然为“text/html”。
2.?DOCTYPE声明
DOCTYPE声明是HTML文件中必不可少的,它位于文件第一行。在HTML 4中,它的声明方法如下:

<!DOCTYPE html PUBLIC "-// W3C// DTD XHTML 1.0 Transitional// EN"
"http:// www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
在HTML 5中,刻意不使用版本声明,一份文档将会适用所有版本的HTML。HTML 5中的DOCTYPE声明方法(不区分大小写)如下:
<!DOCTYPE html>```
另外,当使用工具时,也可以在DOCTYPE声明方式中加入SYSTEM识别符,声明方法如下:

`
在HTML 5中像这样的DOCTYPE声明方式是允许的(不区分大小写,引号不区分是单引号还是双引号)。
3.?指定字符编码
在HTML 4中,使用meta元素的形式指定文件中的字符编码,如下所示:

在HTML 5中,可以使用对元素直接追加charset属性的方式来指定字符编码,如下所示:

<meta charset="UTF-8">```
两种方法都有效,可以继续使用前面一种方式(通过content元素的属性来指定),但是不能同时混合使用两种方式。在以前的网站代码中可能会存在下面代码所示的标记方式,但在HTML 5中,这种字符编码方式将被认为是错误的,这一点请注意。

content="text/html;charset=UTF-8">`
从HTML 5开始,对于文件的字符编码推荐使用UTF-8。

2.1.3 HTML 5确保的兼容性

HTML 5的语法是为了保证与之前的HTML语法也能够达到最大程度的兼容而设计的。例如,符合“没有

的结束标记”的HTML代码随处可见,HTML 5中并没有把这种情况作为错误来处理,而是允许存在这种情况,但明确规定了这种情况应该怎么
处理。
那么,针对这个问题,我们从元素标记的省略、具有boolean值的属性、引号的省略这几方面来详细看一下在HTML 5中是如何确保与之前版本的HTML实现兼容的。
1.可以省略标记的元素
在HTML 5中,元素的标记可以省略。具体来说,分为“不允许写结束标记”、“可以省略结束标记”和“开始标记和结束标记全部可以省略”三种类型。
接着,我们针对这三类情况列举一个元素清单,其中包括本书到现在为止还没有介绍的HTML 5中的新元素(关于这些新元素,2.2节将进行介绍)。
不允许写结束标记的元素有:area、base、br、col、command、embed、hr、img、input、keygen、link、meta、param、source、track、wbr。
可以省略结束标记的元素有:li、dt、dd、p、rt、rp、optgroup、option、colgroup、thead、tbody、tfoot、tr、td、th。
可以省略全部标记的元素有:html、head、body、colgroup、tbody。
“不允许写结束标记的元素”是指不允许使用开始标记与结束标记将元素括起来的形式,只允许使用“<元素/>”的形式进行书写。例如“
...”的书写方式是错误的,只允许“
”的书写形式。当然,HTML 5之前的
这种写法可以被沿用。
“可以省略全部标记的元素”是指该元素可以完全被省略。注意,即使标记被省略了,该元素还是以隐式的方式存在的。例如省略不写body元素时,在文档结构中它还是存在的,可以使用document.body访问。
2.?具有boolean值的属性
对于具有boolean值的属性,例如disabled与readonly等,当只写属性而不指定属性值时,表示属性值为true,如果想要将属性值设为false,则可以不使用该属性。另外,要想将属性值设定为true时,也可以将属性名设定为属性值,或将空字符串设定为属性值。
属性值的设定方法可以参考下面的代码示例:

<!--只写属性不写属性值代表属性为true-->
<input type="checkbox" checked>
<!--不写属性代表属性为false-->
<input type="checkbox">
<!--属性值=属性名,代表属性为true-->
<input type="checkbox" checked="checked">
<!--属性值=空字符串,代表属性为true-->
<input type="checkbox" checked="">```
3.?省略引号
大家已经知道,在指定属性值的时候,属性值两边加引号时既可以用双引号,也可以用单引号。
HTML 5在此基础上做了一些改进,当属性值不包括空字符串、“<”、“>”、“=”、单引号、双引号等字符时,属性值两边的引号可以省略。如下面的代码所示:

`

2.1.4 标记示例

现在,我们通过前面学到的HTML 5的语法知识来看一个关于HTML 5标记的示例。
代码清单2-1完全是用HTML 5写成的。其中省略了、

、等元素。可以通过这个示例复习一下HTML 5的DOCTYPE声明、用元素的charset属性指定字符编码、
元素的结束标记的省略、使用<元素/>的方式来结束元素,以及
元素等本节中所介绍的知识要点。
代码清单2-1 HTML 5标记示例

<!DOCTYPE html>
<meta charset="UTF-8">
<title>HTML 5标记示例</title>
<p>这段代码是根据HTML 5语法
<br/>编写出来的。```
这段代码在Firefox 4浏览器中的运行结果如图2-1所示,另外,本书中如果没有特别说明使用什么浏览器,则使用的都是Firefox 4浏览器。

<div style="text-align: center"><img src="https://yqfile.alicdn.com/41bc87269180ada13caa86ba0af8ff0be1e6dbcd.png" width="" height="">
时间: 2024-08-01 07:46:10

《HTML 5与CSS 3 权威指南(第3版·上册)》——2.1 语法的改变的相关文章

《QTP自动化测试权威指南(第二版)》—第1章1.5节QTP许可证模式

1.5 QTP许可证模式 QTP自动化测试权威指南(第二版) 1.QTP支持以下两种类型的许可证. 单机版许可证 并发许可证 2.单机版许可证 单机版许可证是一个节点锁定或基于机器的许可证.这个许可证仅能用在生成的那台机器上,因为QTP生成的锁定码只能针对于安装它的那台机器. 如要申请一个单机版许可证,如图1-10中所示选择"Seat license"复选按钮然后点击Next.点击之后,许可证向导会如图1-11所示.显示本机的锁定码.将锁定码记录下来然后访问https://webwar

《QTP自动化测试权威指南(第二版)》目录—导读

内容提要 QTP自动化测试权威指南(第二版) 本书是QTP测试的权威指南,展示了作者在软件测试方面的造诣.本书分为基础知识和高级技巧两个部分.第1章-第18章是基础知识篇,介绍了QTP的基本功能.第1章自动化测试流程,第2章QTP帮助文档的使用,第3章对象库,第4章数据池,第5章操作模块(Action),第6章QTP环境变量,第7章保留对象,第8章检查点,第9章库函数文件.第10章描述性编程,第11章QTP的调试功能,第12章场景恢复,第13章正则表达式,第14章VBScript,第15章同步点

图书-Anroid开发权威指南(第二版)pdf

问题描述 Anroid开发权威指南(第二版)pdf 谁有完整的<Anroid开发权威指南>的第二版? 网上只找到第一版pdf,求完整的新版

《QTP自动化测试权威指南(第二版)》—第2章2.1节目录标签(Contents Tab)

第2章 QTP帮助文档的使用 QTP自动化测试权威指南(第二版) QTP的在线帮助为我们提供了很多有用的信息.但是有时候,尤其是对于使用QTP的新手而言,找到某个具体的信息可能还是有点困难.本章讲解了如何有效地查询帮助文件,从而找到我们需要的信息的方法. QTP帮助文档有四个标签页如图2-1所示. 本章将逐一论述前三个标签页. 2.1 目录标签(Contents Tab) QTP自动化测试权威指南(第二版) 目录标签页提供了帮助文档的视图结构.本标签页的主题呈现的内容,依赖于我们安装了哪些插件.

《QTP自动化测试权威指南(第二版)》—第1章1.4节开始使用QT

1.4 开始使用QTPQTP自动化测试权威指南(第二版)1.4.1 从HP网站下载QTP首先我们需要从HP网站下载最新的QTP版本.以下是下载步骤. (1)登录http://support.openview.hp.com. (2)点击左侧的"Products"链接. (3)选择页面上"Application Lifecycle Management",点击链接. (4)展开"Test execution to accelerate application

《QTP自动化测试权威指南(第二版)》—第1章1.2节自动化测试流程

1.2 自动化测试流程QTP自动化测试权威指南(第二版)理解自动化测试中包含的各个阶段对于开发和有效利用测试框架以及用例非常重要,如图1-1所示. 选择"最适合的"自动化工具:在对任何应用开始自动化测试之前,重要的是针对主要应用部分选择最适合的工具.选择需要基于各种因素,比如价格.易用性.应用支持能力和产品服务支持.概念证明(Proof of Concept,POC):此阶段包含创建一些脚本示例用来在一两个最重要的被测应用中验证业务流程.它可以帮助识别未来在测试用例的脚本开发中有可能碰

《QTP自动化测试权威指南(第二版)》—第1章1.3节什么是HP QuickTest Professional(QTP)

1.3 什么是HP QuickTest Professional(QTP)QTP自动化测试权威指南(第二版)HP公司的QTP是针对功能测试的自动化工具.它本身支持录制回放功能,藉此自动化工程师可以录制捕获对被测试应用的操作事件,并且在测试阶段回放. QTP提供两种模式查看和编辑测试脚本. 关键字视图.专家视图.关键字视图以关键字的方式显示脚本(每个对象是一个图标),以树状格式排列,方便很少或没有编程背景的业务专家.关键字视图如下面截图,如图1-2所示. 专家视图将隐藏在关键字视图中图标底下的VB

《QTP自动化测试权威指南(第二版)》—第1章1.1节什么是自动化测试

1.1 什么是自动化测试QTP自动化测试权威指南(第二版)自动化测试是对一个已有的手工测试过程减少并尽可能排除人工干预的过程. 1.什么时候适合做自动化测试下面是一组适合将手工测试自动化的考量因素. 测试需要经常重复.测试流程和验证点相对长时间比较稳定.测试目的是验证一个业务流程,而不是外观.感觉.颜色.图表布局等.测试需要大量重复或者同时包含很多步骤,并且这些操作每次都需要完全一致.这就要求手工测试者不能疏忽大意.测试生成的结果被监管机构要求电子化记录和存档并符合正式的证据要求.测试通过或失败

求《struts 2.x权威指南(第3版)》,一书代码,谁可以分享一下?

问题描述 求<struts2.x权威指南(第3版)>,一书代码,谁可以分享一下?邮箱:1310095226@qq.com

《HTML 5与CSS 3权威指南(第3版·下册)》——导读

前 言 为何写作本书 2014年10月28日,W3C的HTML工作组正式发布了HTML 5的正式推荐标准(W3C Recommendation),这一消息是W3C在美国圣克拉拉举行的W3C技术大会及顾问委员会会议(TPAC 2014)上宣布的.HTML 5在这一版本中增加了支持Web应用开发者的许多新特性,以及更符合开发者使用习惯的新元素,并重点关注定义清晰的.一致的准则,以确保Web应用和内容在不同用户代理(浏览器)中的互操作性.HTML 5是构建开放Web平台的核心. 2015年4月9日,W