![HTML5+CSS3从入门到精通(微课精编版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/697/24172697/b_24172697.jpg)
2.4 完善旧元素
HTML5对HTML4部分元素进行了优化,具体说明如下。
2.4.1 a——超链接
![](https://epubservercos.yuewen.com/1B54E6/13043253503832006/epubprivate/OEBPS/Images/Figure-P56_14196.jpg?sign=1739606286-J7xU3XY8Vc9HdM1gcUa0ZADWuE5Pt2wE-0-5bf6c63958f54fb33066c1b04562155e)
视频讲解
HTML5为a元素新增了3个属性,简单说明如下:
download:设置被下载的超链接目标。
media:设置被链接文档是被何种媒介/设备优化的。
type:设置被链接文档的MIME类型。
【示例】下面示例使用download属性设计图片被单击后,直接下载,而不是在新窗口中显示,效果如图2.16所示。
<a href="images/1.jpg" download="images/1.jpg"><img src="images/1.jpg"/></a>
![](https://epubservercos.yuewen.com/1B54E6/13043253503832006/epubprivate/OEBPS/Images/Figure-P57_14226.jpg?sign=1739606286-oBmuJFzlCQIRnC0s3sTSbi0GuQR7YMwI-0-ec5227e611233e6ec92a53e6c3ac85c3)
图2.16 单击下载图片
提示:目前,Chrome、Opera和Firefox版本的浏览器均支持该属性,IE暂不支持。
2.4.2 ol——有序列表
![](https://epubservercos.yuewen.com/1B54E6/13043253503832006/epubprivate/OEBPS/Images/Figure-P57_14287.jpg?sign=1739606286-DTWxQRdeRtcTWwtqmJyz00H7zqZbtZLw-0-308af548eee9b647ab12202b5d9af6f3)
视频讲解
HTML5为ol元素新增了reversed属性,用来设置列表顺序为降序显示。
【示例】下面示例使用reversed属性设计列表项目按倒序显示,效果如图2.17所示。
![](https://epubservercos.yuewen.com/1B54E6/13043253503832006/epubprivate/OEBPS/Images/Figure-P57_77812.jpg?sign=1739606286-5t4fQSnp1KPoPGsolARE73ZUtwDqmK70-0-f7f9dfb99a9a7256653ed3004ba93a7a)
![](https://epubservercos.yuewen.com/1B54E6/13043253503832006/epubprivate/OEBPS/Images/Figure-P57_14275.jpg?sign=1739606286-RkehnFnUnf8FONxZOOb24vCkL6FHjKjG-0-4320557751299bacb8472ab38a526439)
图2.17 项目列表倒序显示
提示:目前,最新版本的Chrome、Opera、Firefox浏览器均支持该属性,IE暂不支持。
2.4.3 dl——定义列表
![](https://epubservercos.yuewen.com/1B54E6/13043253503832006/epubprivate/OEBPS/Images/Figure-P57_14290.jpg?sign=1739606286-orMyELQddHllkmLQfOt6TNL0slxage3y-0-f56881bf3c146f5bda53f2f6e96e69ff)
视频讲解
HTML5重新定义了dl元素,允许dl列表包含多个带名字的列表项。每一项包含一条或多条带名字的dt元素,用来表示术语,dt元素后面紧跟一个或多个dd元素,用来表示定义。在一个元素内,不允许有相同名字的dt元素,即不允许有重复的术语。
【示例】下面示例演示了如何使用dl元素对诗句进行逐句解析,效果如图2.18所示。
![](https://epubservercos.yuewen.com/1B54E6/13043253503832006/epubprivate/OEBPS/Images/Figure-P58_77813.jpg?sign=1739606286-nFVlsvFuZdZ6sECPKtpOfzidPXkqQkpD-0-cfb9e70f696ca5f5fb5c0f201cb48ae5)
![](https://epubservercos.yuewen.com/1B54E6/13043253503832006/epubprivate/OEBPS/Images/Figure-P58_14350.jpg?sign=1739606286-Q5YjYbRuQLaXgaGvzM1dYOshprpSkbkt-0-5b0614835e12ecb14912fefe8b352e8f)
图2.18 定义列表项目的应用
2.4.4 cite——引用文本
![](https://epubservercos.yuewen.com/1B54E6/13043253503832006/epubprivate/OEBPS/Images/Figure-P58_14383.jpg?sign=1739606286-u7yyd5bpkF50uAhtNk4nAAQD2hngA9Ha-0-1291d8a419e15f3664d454c46f117f44)
视频讲解
cite元素表示引用参考,如书籍或者杂志的标题。按照惯例,引用的文本将以斜体显示。一般应把引用文本包裹在a元素中,方便用户快速跳转到原出处。
cite元素还有一个隐藏的功能:可以从文档中自动摘录参考书目。浏览器能够自动整理引用表格,并把它们作为脚注或者独立的文档来显示。
cite元素的语义已经超过了改变它所包含的文本外观的作用,它使浏览器能够以各种实用的方式来向用户表达文档的内容。
【示例】下面示例简单演示了cite元素的应用,效果如图2.19所示。
![](https://epubservercos.yuewen.com/1B54E6/13043253503832006/epubprivate/OEBPS/Images/Figure-P58_77814.jpg?sign=1739606286-nvPa8WZnhhTl1aIoMXjDg4HOwARMvzUY-0-9a07950b71aaf4a459d8d886131f3483)
![](https://epubservercos.yuewen.com/1B54E6/13043253503832006/epubprivate/OEBPS/Images/Figure-P58_14380.jpg?sign=1739606286-zAlDUpoBPSv7jzgDMuszAfqGrKL60KiN-0-be4cd50de6c7728adaba14a859ac897a)
图2.19 使用cite元素
2.4.5 small——小号字体
small元素本来用来定义小号字体效果,HTML5对其进行了重新定义,使其由原来的通用展示性元素变为更具体的、专门用来标识所谓“小字印刷体”的元素,通常用在诸如免责声明、注意事项、法律规定、与版权相关等法律性声明文字中,同时不允许应用在页面主内容中,只允许被当作辅助信息,以inline方式内嵌在页面上。
同时,small元素也不意味着元素中内容字体会变小,要将字体变小,需要使用CSS样式表。
2.4.6 iframe——浮动框架
HTML5主要从安全性方面增强iframe元素,新增了3个属性,简单说明如下:
sandbox:启用一系列对iframe中内容的额外限制,取值包括:""、allow-forms(允许表单提交)、allow-same-origin(允许同源访问)、allow-scripts(允许执行脚本)、allow-top-navigation(允许框架访问)。
seamless:定义iframe看上去像是包含文档的一部分,取值为seamless(无缝嵌入),或者不设置。
srcdoc:规定在iframe中显示的HTML内容,取值为HTML代码。
HTML5为iframe元素增加sandbox属性,是出于安全性方面的原因,对iframe元素内的内容是否允许显示,表单是否允许被提交,以及脚本是否允许被执行等方面进行一些限制。
通过设置iframe元素的sandbox属性,iframe元素内显示的页面被添加如下所示的限制。
该页面中的插件被禁用。
该页面中的表单被禁止提交。
该页面中的JavaScript脚本代码被禁止运行。
如果单击该页面内的超链接,将把浏览器窗口或iframe元素之外的任何内容导航到iframe,则该超链接被禁用。
该页面被视为来自一个单独的源,所以禁止加载该页面中来自服务器端的内容,禁止该页面与服务器端进行交互,同时禁止加载页面中从Cookie或Web Storage中读出的内容。
提示:sandbox属性允许指定多个属性值,属性值与属性值中间用空格分隔。
2.4.7 script——脚本
![](https://epubservercos.yuewen.com/1B54E6/13043253503832006/epubprivate/OEBPS/Images/Figure-P59_14462.jpg?sign=1739606286-qkGF3Ck3YGJivA5wfVAzl5lcnTFAVN0H-0-aabd6755b44469736cf6c133dcc4aee5)
视频讲解
HTML5为script元素新增async属性,规定异步执行脚本,仅适用于外部脚本,取值为async。
【示例1】下面示例演示了async属性的应用。
<script src="test1.js" async onload="ok()"></script> <script> console.log("内部脚本"); </script>
设计在页面中导入外部脚本文件test1.js,该文件的代码如下:
![](https://epubservercos.yuewen.com/1B54E6/13043253503832006/epubprivate/OEBPS/Images/Figure-P59_77817.jpg?sign=1739606286-aK9t6cyOdZxiAXbkfn9eXaG6bWbhnGNA-0-5aad806760364e9b00037425885ba154)
在Chrome浏览器中预览,可以看到页面内部脚本先被执行,最后才执行异步导入的脚本文件代码,效果如图2.20所示。
![](https://epubservercos.yuewen.com/1B54E6/13043253503832006/epubprivate/OEBPS/Images/Figure-P60_14479.jpg?sign=1739606286-x8f1NnABbOulmEdYzOSaVEhrnDkmF28J-0-44ff70f8129ad41a6b0824b86633ea8a)
图2.20 异步加载JavaScript脚本
【示例2】如果在script元素中删除async属性,则可以看到先等到外部JavaScript脚本文件加载完毕之后,才执行内部脚本,效果如图2.21所示。
<script src="test1.js" onload="ok()"></script> <script> console.log("内部脚本"); </script>
![](https://epubservercos.yuewen.com/1B54E6/13043253503832006/epubprivate/OEBPS/Images/Figure-P60_14508.jpg?sign=1739606286-IouyW1GXFqQR8wir09FrrsH1hN1WtSwJ-0-348280ed76f7d590b8a6671271182936)
图2.21 同步加载JavaScript脚本