Html5+Css3架构讲给设计师们带来什么未来?

2013 年 10 月 24 日2,4640

Html5+Css3架构讲给设计师们带来什么未来?

时间:2013-10-19 14:15 编辑:西安在线 来源:西安在线 点击:次

核心提示:HTML 5+CSS3如同一场技术革命,继Web2.0后轰轰烈烈的进行着。 HTML 5是什么,想必大家都有所了解,那HTML5+CSS3呢?对于HTML 5+CSS3的革新,我想跟大家一起分享我的理解,总结为语义明确的标签体系、化

HTML 5+CSS3如同一场技术革命,继Web2.0后轰轰烈烈的进行着。

HTML 5是什么,想必大家都有所了解,那HTML5+CSS3呢?对于HTML 5+CSS3的革新,我想跟大家一起分享我的理解,总结为语义明确的标签体系、化繁为简的富媒体支持、神奇的本地数据存储技术、不需要插件的富动画(canvas)、强大的 API支持。可跨平台架构,手机访问WEB一样简单,该技术架构不分电脑手机等终端浏览。总之,HTML 5+CSS3让人机交互,人网交互变得更加舒适,电脑和手机浏览贴合用户。以往对付媒体应用与本存储的支持乏力也不再是浏览器的切肤之痛。将Web从内容平台推向标准化的应用平台,并一统各在平台阵营的标准,才是HTML 5革命的初衷。如今WEB世界最只售可热的新技术非HTML5+CSS3莫属了。

以下为我阐述HTML 5的革新之一:语义更简洁明确的结构。

常见标准的XHTML头部代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " https://4bo.cn/aff.php?aff=024 ">

<html xmlns=" https://4bo.cn/aff.php?aff=024 ">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />

</head>

你能记住吗?会去死记硬背吗?当然不会!这些我们只需要机械的复制粘贴即可(因为都是通用的)。

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

<!doctype html>

<meta charset=gb2312>

哪个简单不用我多说吧。HTML 5的头部可以如此简单?是的。就是如此简单。很容易记住吧!切记HTML5可以忽略大小写。

Html5为什么可以如此简单或者说是松散?其实,我们把XHTML当成text/html来发送,浏览器也是可以很好的解析,因为浏览器对代码的语法。所以,HTML 5是形式上的,它可能会破坏原有的一些标准,但在浏览器中仍然有很好的表现。

当然,为了迎合国际标准以及团队协助与后续维护的方便,我们还是应该统一一种自己喜欢的标准的风格写法,比如:

<!doctype html>

<html>

<head>

<meta charset="gb2312" />

...

</head>

<body>

...

</body>

</html>

另外,关于HTML5不得不提IE,在苹果、Google、Opera和Mozilla等主流浏览器厂商积极参与新版本HTML标准的制定和推广时,微软却对HTML 5规范不屑一顾。然而微软近期才表态要在IE中支持HTML 5,至今的IE8及以下是无法支持HTML5标签的。目前能较好的支持HTML5+CSS3的主流浏览器有苹果、Google、Opera、Mozilla和火狐等浏览器。

HTML 5虽然目前并不为所有浏览器支持,但它能省去100多字节(对于日PV百万级以上的站点,能省下不少的流量)的头部已可完美的兼容。如果你对浏览器解析模式有研究的话,你应该知道,页面在没有定义doctype的情况下会触发怪异模式,而只要定义了<! doctype html>浏览器就可以在标准模式下解析页面,而不需要指定某个类型的DTD。

新的语义化标签体系

语义化编码是一个合格前端Developer必备的技能,但随着网页的日渐丰富化,仅仅用原有的xhtml标签去语义化显然已经力不从心。而HTML 5提供了一系列新的以反应现代网站典型语义的标签及相应属性。实践出真理。如下:

<div id="header">

<div class="hgroup">

<h1>四博云计算</h1>

<h1>Web手机专用版</h1>

</div>

<div id="nav">

<ul>

<li>HTML 5</li>

<li>CSS</li>

<li>JavaScript</li>

</ul>

</div>

</div>

<!--//header end-->

<div id="left">

<div class="article">

<p>这是一篇讲述HTML 5新结构标签的文章。</p>

</div>

<div class="article">

<p>这还是一篇讲述HTML 5新结构标签的文章。</p>

</div>

</div>

<!--//left end-->

<div id="aside">

<h1>作者简介</h1>

<p>四博,专注Web前端技术的凡夫俗子。</p>

</div>

<!--//side end-->

<div id="footer">

页面的底部

</div>

<!--//footer end-->

上面是四博平台一个简单的新闻页面部分HTML,由头部、文章展示区、右侧栏、底部组成。编码整洁,也符合XHTML的语义化,在HTML 5中也可很好的表现。但对浏览器而言,这是一段权重没有区分开的代码,而不是让机器也可读懂语意的通过标签来定义相应的模块。

比如,在标准浏览器(比如Firefox、Chroome新版的IE)都有一个快捷键带引客户直接跳转至导航页面,导航所有模块用DIV定义,而DIV的 ID值是开发者自定义的,所以,浏览器并不能辨别哪个应该是导航链接所在区块。HTML 5新标签的出现,正好弥补了这一缺憾。上面的代码,换成HTML 5如下编写:

<header>

<hgroup>

<h1>四博云计算</h1>

<h1> Web手机专用版</h1>

</hgroup>

<nav>

<ul>

<li>HTML 5</li>

<li>CSS</li>

<li>JavaScript</li>

</ul>

</nav>

</header>

<div id="left">

<article>

<p>这是一篇讲述HTML 5新结构标签的文章。</p>

</article>

<article>

<p>这还是一篇讲述HTML 5新结构标签的文章。</p>

</article>

</div>

<aside>

<h1>作者简介</h1>

<p>四博,专注Web前端技术的凡夫俗子。</p>

</aside>

<footer>

网页底部

</footer>

原来,HTML的页面结构可以如此之美,不用注释也一目了然。对于浏览器,找到对应的区块也不再会茫然无措。如何用HTML 5新标签结构化元素通过上面的示例,我们了解到HTML 5的新标签对结构化的革新,但切换到实际使用中,该如何恰当的使用它们呢?我想这也是很多HTML 5新手想问一个问题。如同XHTML语义化一样,HTML 5语义化标签的使用也应该遵循:每个标签都有它特定的意义,而语义化,就是让我们在适当的位置用适当的标签,以更好的让人和机器(机器可理解为浏览器可理解为搜索引擎)都一目了然。比如header标签一般是页面的第一个区块元素(header标签也可用于类型的头部元素中,比如文章区块的标题),包含的了页面的主题信息;nav标签一般用于包裹导航信息;footer一般用来包裹页面底部信息;等等。

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

<header>标签手册释义:定义 section 或 document 的页眉。

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

<header>

<hgroup>

<h1>四博云计算</h1>

<h1>四博,专注Web前端技术的凡夫俗子。</h1>

</hgroup>

</header>

<hgroup>标签

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

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

<hgroup>

<h1>这是一篇介绍HTML 5结构标签的文章</h1>

<h2>HTML 5的革新</h2>

</hgroup>

<nav>标签

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

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

<nav>

<ul>

<li>HTML 5</li>

<li>CSS</li>

<li>JavaScript</li>

</ul>

</nav>

<aside>标签

定义 article 以外的内容。aside 的内容应该与四博云平台article 的内容相关。

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

<aside>

<h1>四博简介</h1>

<p>Mr.Think,专注Web前端技术的凡夫俗子。</p>

</aside>

<section>标签

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

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

<section>

<h1>section是什么?</h1>

<h2>一个新的章节</h2>

<article>

<h2>关于section</h1>

<p>section的介绍</p>

...

</article>

</section>

<footer>标签

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

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

<footer>

97071268@qq.com

</footer>

<article>标签

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

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

<article>

<header>

<hgroup>

<h1>这是一篇介绍HTML 5结构标签的文章</h1>

<h2>HTML 5的革新</h2>

</hgroup>

<time datetime="2011-03-20">2011.03.20</time>

</header>

<p>内容详情</p>

</article>

<figure>标签

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

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

<figure>

<img src="img.gif" alt="figure标签" title="figure标签" />

<figcaption>这儿是图片的描述信息</figcaption>

</figure>

<menu>标签

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

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

<menu>

<li>HTML 5</li>

<li>CSS</li>

<li>JavaScript</li>

</menu>

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

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

关于兼容性

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

后话

任何一门新技术,都需要一个适应的过程。如果你准备好了做一名优秀的Web前端开发人员,那你就得不断的尝试并接受最新的前端技术。

孙文曾说,欲经文明这幸福,不得不经文明之痛苦。人类的革命如此,HTML 5的革命亦是如此。IE的日渐没落,让各大浏览器厂商以一次进入了战国时代,群雄逐鹿。而对于开发者,我们只奢求各大浏览器厂商尽可能的遵循同一个标准,而不是群雄逐鹿后的四分五裂。因为,高效完美的呈现给各类用户同样的应用才是我们的终极目标。

如此,本文从页面的doctype说起,到用HTML 5新标签搭建语义化更明确的页面的结构,再解释了一番与页面结构相关的新标签。相信大家对HTML 5的结构性新标签有了一个新的认知,如果你有兴趣,那就打开你的IDE,写上一段由HTML 5新标签搭建的代码,然后用CSS去描绘你的宏伟蓝图吧!具体信息可以参考:https://4bo.cn/aff.php?aff=024

附上几个Html5+Css3的精彩应用:

画图软件:http://http://www.zjjv.com///sketchpad/

本地化便签:http://http://www.zjjv.com///static/stickies.html

反恐精英:http://http://www.zjjv.com///code/demos/canvascape/

LOCOROCO:http://http://www.zjjv.com///anigma/

打鼓机器:http://http://www.zjjv.com///labs/html5drums/

某动作游戏:http://http://www.zjjv.com///detail/another-world-js/

分形图:http://http://www.zjjv.com///projects/canopy/

打砖块:http://http://www.zjjv.com///static/canvastutorial/

可以旋转的播放器:http://http://www.zjjv.com///static/video.html

图表:http://http://www.zjjv.com///

(本文来源:西安在线 )

西安在线

查看其它相关

新闻

0 0