HTML5网页设计

html5

HTML5结构之美

时间:2012-04-07 15:53来自:未知作者:网络点击:
html5很让很多人为之疯狂,本站也曾多次发文进行介绍,我们这里就再次重新认识一下html5。阐述深度认识HTML5:语义更明确简洁的结构。 从头说起 一个标准的XHTML头部代码应该是这样: 你能记住吗?你会去死记硬背吗?当然不会!

html5很让很多人为之疯狂,本站也曾多次发文进行介绍,我们这里就再次重新认识一下html5。阐述深度认识HTML5:语义更明确简洁的结构。

从”头”说起

一个标准的XHTML头部代码应该是这样:

你能记住吗?你会去死记硬背吗?当然不会!我们只需要机械的复制粘贴即可。

再看看一个标准的HTML 5头部是如何的:

孰繁孰简,就不用我说了。是的,HTML 5的头部可以如此简单,可以轻易的记住!并且,可以忽略大小写,引号以及最后一个尖括号前的反斜线。

为什么可以如此松散?其实,如果把XHTML当成text/html发送,浏览器一样可以很好的解析,浏览器并不在乎代码的语法。所以,HTML 5是形而上的,它可能会破坏原有的一些标准,但仍可

在浏览器中很好的表现。

当然,为了团队协助与后续维护的方便,我们还是应该统一一种你喜欢的风格的写法,比如:

另外,HTML 5虽然目前并不为所有浏览器所支持,但这个能省去100多字节(对于日PV百万级以上的站点,能省下不少的流量哦)的头部已可以完美的兼容了。如果你对浏览器解析模式有研究的

话,你应该知道,页面在没有定义doctype的情况下会触发怪异模式,而只要定义了<!doctype html>浏览器就可以在标准模式下解析页面,而不需要指定某个类型的DTD。

新的语义化标签体系

语义化编码是一个合格前端Developer必备的技能,但随着网页的日渐丰富化,仅仅用原有的xhtml标签去语义化显然已经力不从心。上帝说:”要有光!”便有了光。于是,HTML 5提供了一

系列新的标签及相应属性,以反应现代网站典型语义。实践出真理。还是写一个例子吧:

上面是一个简单的博客页面部分HTML,由头部、文章展示区、右侧栏、底部组成。编码整洁,也符合XHTML的语义化,即便是在HTML 5中也可以很好的表现。但是对浏览器来说,这就是一段没

有区分开权重的代码,而不是一个让机器也能读懂语义的标签来定义相应的区块。比如,标准浏览器(比如Firefox、Chrome甚至新版的IE9)都有一个快捷键可以带引客户直接跳转到页面的

导航,但问题是所有的区块都是用DIV定义,并且DIV的ID值是同开发者定的,所以,浏览器并不知道哪个应该是导航链接所在区块。HTML 5新标签的出现,正好弥补了这一缺憾。那么,上面

的代码,换成HTML 5就可以这样写:

原来,HTML的页面结构可以如此之美,不用注释也能一目了然。对于浏览器,找到对应的区块也不再会茫然无措。

如何用HTML 5新标签结构化元素

通过上面的示例,我们了解到HTML 5的新标签对结构化的革新,但切换到实际使用中,该如何恰当的使用它们呢?我想这也是很多HTML 5学习者想问一个问题。如同XHTML语义化一样,HTML 5

语义化标签的使用也应该遵循:每个标签都有它特定的意义,而语义化,就是让我们在适当的位置用适当的标签,以更好的让人和机器(机器可理解为浏览器可理解为搜索引擎)都一目了然。

比如header标签一般是页面的第一个区块元素(header标签也可用于类型的头部元素中,比如文章区块的标题),包含的了页面的主题信息;nav标签一般用于包裹导航信息;footer一般用来包

裹页面底部信息;等等。

下面是我参考HTML 5手册列出的结构类常用新标签的语义解释及使用指引:

<header>标签

手册释义:定义 section 或 document 的页眉。

使用指引:一般用来包含页面头部,也可用于其他区域头部,比如article头部:

<hgroup>标签

手册释义:用于对网页或区段(section)的标题进行组合。

使用指引:用于标题类的组合,比如文章的标题与副标题:

<nav>标签

手册释义:定义导航链接的部分。

使用指引:用于定义页面的导航部分:

<aside>标签

定义 article 以外的内容。aside 的内容应该与 article 的内容相关。

使用指引:用于成节的内容,会在文档流中开始一个新的节,一般用于与文章内容相关的边栏:


<section>标签

手册释义:定义文档中的节(section)。比如章节、页眉、页脚或文档中的其他部分。

使用指引:用于成节的内容,会在文档流中开始一个新的节:

<section>
<h1>section是什么?</h1>
<h2>一个新的章节</h2>
<article>
<h2>关于section</h1>
<p>section的介绍</p>
&hellip;
</article>
</section>

<footer>标签

手册释义:定义 section 或 document 的页脚。典型地,它会包含创作者的姓名、文档的创作日期以及/或者联系信息。

使用指引:一般用来包裹整个页面通用底部,也可用于其他区域底部,比如article底部:

<article>标签

手册释义:定义外部的内容。比如来自一个外部的新闻提供者的一篇新的文章,或者来自 blog 的文本,或者是来自论坛的文本。亦或是来自其他外部源内容。

使用指引:顾名思义,一般用于文章区块:

<figure>标签

手册释义:用于对元素进行组合。

使用指引:多用于图片与图片描述组合:

<menu>标签

手册释义:定义菜单列表。当希望列出表单控件时使用该标签。

使用指引:使用于菜单类区块,用来定义菜单列表或菜单选项:

HTML 5的其他新标签,就不此一一解释了,请自行查询一下手册。

其实,这些东西,如同XHTML的div、h1、inpu等标签一样,只要平时多加实践,运用自如也是轻而易举的。

关于兼容性

如果你是一个喜欢研究关注前端的人,你应该知道淘宝的页面结构中已大量用到了HTML 5新标签。所以,我想说的是只要敢于尝试,兼容性不是问题,兼容的方法,网上有很多(本文是讲结

构的,哈~)。

后话

当前文章地址:http://www.shejicool.com/web/html5/330.html

阅完本篇文章?您还可以: 收藏本文 文章挑错 朋友推荐