《HTML5开发手册》——第1章 HTML5中新的结构元素 第1章 HTML5中新的结构元素

本节书摘来自异步社区《HTML5开发手册》一书中的第1章,第1.1节,作者: 【美】Chuck Hudson , 【英】Tom Leadbetter 更多章节内容可以访问云栖社区“异步社区”公众号查看。

第1章 HTML5中新的结构元素

HTML5并不是一种具有JavaScript API和酷炫视频的交互式巫术。它有20多个新的元素,可以用来开发Web页面、添加语义以交付容易访问的可重用内容。

在后面章节,我们将学习新的HTML5表单控件和多媒体元素。本章主要讲解新的结构元素,如header、hgroup、nav、footer、article、section和aside。你将知道何时以及如何单独或组合使用这些新元素。实际上,你还将学会利用这些新元素创建一个基本的网站模板,如图1.1所示。


《HTML5开发手册》——第1章 HTML5中新的结构元素 第1章 HTML5中新的结构元素

1.1 初学者“菜谱”:建立HTML5初始文件

现在我们开始HTML5的旅程,让我们先从HTML文件最上面的声明部分说起。虽然在这一区域的内容并不包含新的元素,但是它现在有一种新的书写方式,在我们开始进入正题之前要知道这一点。

1.1.1 doctype
看起来很眼熟么?


《HTML5开发手册》——第1章 HTML5中新的结构元素 第1章 HTML5中新的结构元素https://yqfile.alicdn.com/8785f92993387b1cad78e6325559b90bf7f2ce14.png"

doctype称作文档类型声明(Document Type Definition),它总是作为HTML文件的第一行。doctype是Web标准要求的一部分,用来告诉浏览器如何处理文档,这也就是将其放在HTML文档第一行的原因所在。所以,如果你不在第一行使用doctype,或者是在doctype前面添加其他代码,浏览器将进入怪异模式(quirks mode),由此导致你编写的代码在某些浏览器下无法正常运行。

你肯定也不愿意去记忆前面出现的这个doctype,是吧?要想记住它太困难了。现在,HTML5提供了一个很好的而且容易记忆的doctype:


《HTML5开发手册》——第1章 HTML5中新的结构元素 第1章 HTML5中新的结构元素https://yqfile.alicdn.com/b50c7209b2a0d102a48ae19e2e98f3ff5e87505d.png" >

老实讲,就这么多。你只需要它,就可以告诉浏览器应处于标准模式下。即使某个浏览器尚未实现HTML5,页面仍然可以继续工作。如果使用,很有可能再次触发浏览器的怪异模式。无论最新的HTML语言版本是多少,选择使用doctype,就能在浏览器中正常运行。

1.1.2 字符编码

在head标记中的第一行需要包含的是charset(字符集)声明,它告诉浏览器应该如何解释这个文件。在本例中,我们想要发送一个HTML文档到浏览器中。

在HTML 4中,它应该如下所示:


《HTML5开发手册》——第1章 HTML5中新的结构元素 第1章 HTML5中新的结构元素

但是,在HTML5中,它会像doctype一样非常简洁:


《HTML5开发手册》——第1章 HTML5中新的结构元素 第1章 HTML5中新的结构元素

太简单了!记住,你的页面需要字符编码和doctype声明。

1.1.3 JavaScript和CSS链接

我们会快速讲解本节内容。HTML5有助于降低页面中的大量标记(markup),还可以简化对JavaScript(和其他客户端脚本文件)与CSS的调用。在HTML 4中,script和link元素需要使用type属性,如下所示:


《HTML5开发手册》——第1章 HTML5中新的结构元素 第1章 HTML5中新的结构元素

但在HTML5中,上面这些代码如下所示:


《HTML5开发手册》——第1章 HTML5中新的结构元素 第1章 HTML5中新的结构元素

你可能会有疑问:“为什么现在可以这样做?”因为HTML5的一个初衷是在你编写代码时,让代码更加容易理解。所以,如果你想要链接某个脚本,浏览器会假设它是JavaScript文件。并且如果使用rel=stylesheet,它只表示你是链接一个CSS文件。当然,不使用type属性也不会对老版本的浏览器造成影响。

1.1.4 语法编写风格

在HTML5中,对于上面的代码示例,可以使用略微不同的方式书写。

可以全部使用大写:


《HTML5开发手册》——第1章 HTML5中新的结构元素 第1章 HTML5中新的结构元素

可以不使用引号:


《HTML5开发手册》——第1章 HTML5中新的结构元素 第1章 HTML5中新的结构元素

可以忽略闭合斜杠:


《HTML5开发手册》——第1章 HTML5中新的结构元素 第1章 HTML5中新的结构元素https://yqfile.alicdn.com/3f999d889e26eaf0a4da3e318078fce4228ca9f9.png" >

或者可以混合使用:


《HTML5开发手册》——第1章 HTML5中新的结构元素 第1章 HTML5中新的结构元素

这些都可以使用,不过还是强烈建议使用前后一致的编码规范。这样不仅对你有所帮助,而且对打算使用你的代码的开发人员来说,也大有益处。语法风格也将是固定的。我们都曾使用过XHTML,所以应当做到闭合所有标记,使用小写字母,并使用引号将属性括起来。

将前面的代码整合起来便得到HTML5初始页面,如代码1.1所示。


《HTML5开发手册》——第1章 HTML5中新的结构元素 第1章 HTML5中新的结构元素https://yqfile.alicdn.com/1e46654cc66867ef8a4d5eeb42efce7059f9645f.png" >

将页面保存为.htm(或.html)文件,现在你可以使用大量的内容来填充该页面。

提示:
验证是一种很有用的工具,它可以检查事情可能出错的原因,在开发过程中它是很重要的一个步骤。不过,由于HTML5还在开发当中,所以还没有官方的验证器服务。W3C 验证器可以检查你的页面与HTML5的一致性,但是也会警告这只是实验性功能。

上一篇:数据质量和特征分析


下一篇:Sql Server之旅——第七站 为什么都说状态少的字段不能建索引