第六章:标准及其他——严肃的HTML
章节总结:
- HTML5是当前的HTML标准。
- 万维网协会(World Wide Web Consortium,W3C)是定义HTML标准的标准组织。
- 文档类型定义(doctype)用来告诉浏览器你使用的HTML版本。
- HTML标准现在是一个“活的标准”,这说明这个标准会不断改变,加入新的特性和更新。
<head>
元素中的<meta>
标记告诉浏览器关于一个Web页面的额外信息,如内容类型和字符编码。<meta>
标记的charset
属性告诉浏览器Web页面使用的字符编码。- 大多数Web页面的HTML文件都使用utf-8编码,另外
<meta>
标记的charset
属性值通常也是utf-8。 alt
属性是<img>
元素中的必要属性。- W3C验证工具是一个免费的在线服务,可以检查页面是否符合标准。可以使用这个验证工具确保你的HTML合法,而且元素和属性符合标准。
例如它能通过三种方式检查:
1.对于在线网页,能用URL检查:
2.对于本地文件,可以上传文件检查:
3.还可以源码检查:
检查结果示例:
- 如果遵循标准,则你的页面会更快地显示,而且在不同浏览器中显示时差异会更小,CSS也能更好地工作。
我的体会:
一、关于文档类型定义:
- 可以在HTML的最开始用一个 doctype 告诉浏览器正在使用的HTML版本。这称作增加文档类型定义。
如果是HTML,则写为:
<!doctype html>
或<!DOCTYPE html>
例如百度、爱奇艺、CSDN等网站首页的源码:
这是一个工业级HTML的基础。
二、关于HTML5:
- HTML不会再有6、7、8… 因为制定标准的人已经把这个规范变成了一个活的标准,它会随着技术的发展形成相应文档。
- HTML具有向后兼容性,这表示我们可以继续向HTML增加新的内容,而浏览器最终也会支持这个新的内容,与此同时,它们也还会继续支持以前的内容。
也就是说,即便明天规则改变了:
比如增加了新元素,那使用新元素与否取决于你;
如果改变了一个元素或属性的工作方式,浏览器会继续支持原来的老方式,同时也会支持新的方式。
在规范不断变化的情况下,你的HTML还是会继续正常工作。 - 规范就是一个文档,里面制定了HTML的标准是什么,由万维网协会维护。
- 当你告诉浏览器你正在使用HTML5,你却没有使用HTML5,虽然浏览器会用它提供的错误处理功能来采取正确的做法,但你还是会遇到老问题(如在不同的浏览器上显示不一样等)。所以,最好还是言行一致。
三、关于字符编码:
- 字符编码用来告诉浏览器页面中使用了哪一种字符。
- 使用字符编码时,使用
<meta>
标记及charset
属性,charset
的属性值就是我们是用的字符编码类型。 - 为服务器提供的文件编码与
<meta>
标记中制定的编码需一致。 <meta>
标记要放到<head>
元素里面,而且应该在<head>
元素中所有其他元素的上面。例如:
<!doctype html> <html> <head> <meta charset="utf-8"> <title>This is Title</title> </head> <body> <!-- There is body --> </body> </html> ``
四、HTML指南:
- 一定要以
<doctype>
开头:这样能让浏览器和验证工具都能顺利开展工作。 - 不能没有
<html>
元素:紧跟 doctype ,<html>
元素必须是Web页面的最顶层元素或根元素。页面中所有其他元素都要嵌套在<html>
元素中。 - 要使用
<head>
和<body>
写出更好的HTML:只有<head>
和<body>
元素能直接放在元素中。 - 在
<head>
中要指定正确的字符编码。 <head>
里面一定要有<title>
:只能在<head>
元素中放置<title>
和<style>
元素。- 嵌套元素的时候一定要当心:嵌套规则很灵活。不要把
<a>
元素嵌套到另一个<a>
中,这会让人很迷惑。也不允许void
元素中嵌套其他内联元素。 - 记得检查你的属性:有些元素的属性是必要的,而有些是可选的。