HTML5最佳实践
首先先给大家推荐个不错的 前端 网站:http://www.tystudio.net
HTML5正迅速称为web前端开发技术标准,作为一名前段开发人员,了解并正确的使用HTML5制作网站变得越来越重要。通过两年的HTML5开发经验,我总结出下面的这个列表,“HTML5最佳实践”,希望它们对你的HTML5开发有所帮助。

1.使用HTML5生成器
当你需要建立一个新的网站的时候,通常你会先根据网站的布局建立一个模板页,然后每个页面都使用这个结构。你可以完全自己去写这样的一个模板页,但是,很庆幸的是现在网上有很多的在线HTML5模板生成工具,你只需要做一些选择,就会得到一个使用HTML5建立好的模板页。这里推荐一个非常不错的HTML5模板在线生成网站SwitchToHTML5,填写一些基本信息之后选择你需要布局模块,点击Generate HTML5 Framework!一个自定义的HTML5模板页就出现了,使用起来非常的方便。
当然如果你想要可以直接使用的HTML5模板,那么你一定会喜欢HTML5 Boilerplate。
2.使用HTML5备忘录
HTML5具有很多的新标签和事件以及不同浏览器支持程度,并且会随着时间不短的新增或更新一些,显然把他们全部记住是有很大的难度的。InMotion Hosting提供了这样的一个备忘录,可以帮助你解决这个问题,并且上面的信息始终是最新的。
备忘录提供了三个图片,分别是标签,事件和浏览器支持,你可以点击这里下载三张图片。
3.注意浏览器兼容问题
HTML5是一个新的技术,虽然现在可以使用它,但是很多浏览器还不支持一些特殊的HTML5标签和事件。

当你开发HTML5的时候Can I Use.com是一个你必须收藏的网站,你可以快速的知道某个元素的在各个浏览器的支持情况。同时网站还包含了CSS3 、SVG和Javascript兼容性图表。
4.如何使老版本IE支持HTML5
IE浏览器是前端开发者永远的痛,ie6/7/8对于html5没有任何的支持。好消息是你可以引用一个很小的js库,使得ie6/7/8支持HTML5,使用起来非常简单只需要在<head>中引入下面的这段代码:
- <!--[if lt IE 9]>
- <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
- <![endif]-->

另外一个非常不错的工具Modernizr,这个js库可以使你的HTML5完美的运行在所有浏览器上。
使用Modernizr的是非常容易的,只需要到这个页面选中你打算用的HTML5元素和CSS3属性,然后下载定制后的js。最后在你的页面中引入这个js,剩下的就交给Modernizr去做吧。
5.正确的使用HTML5元素
在使用HTML5之前,我们通常会在页面使用很多的<div>元素。使用div最大的缺点就是html结构很不容易阅读。这就是为什么HTML5制定出新的标签来代替以前很不错的<div>。
HTML5新标签包含header, footer, article, section, aside, nav等。下面列出一个基础的并且语义正确的HTML5页面结构:
- <!doctype html>
- <html lang="en">
- <head>
- <meta charset="utf-8">
- <title></title>
- </head>
- <body>
- <header>
- ...
- </header>
- <div role="main">
- ...
- </div>
- <footer>
- ...
- </footer>
- </body>
- </html>
6.最后验证你的代码
在制作完成一个HTML5页面之后,为了确保代码符合标准,你需要使用W3C validator来验证你的网页,老的html验证依然可以使用在验证新的HTML5. 一个符合W3C标准的网页才是一个好的网页。
英文文章链接:http://www.catswhocode.com/blog/best-practices-for-efficient-html5-coding
HTML5最佳实践的更多相关文章
- HTML5最佳实践web app
简介 本文重点关注如何充分利用HTML5和CSS让web app运行更加流畅. Tip 1: 使用web storage代替cookie cookie最大的缺陷是在每一次HTTP请求中都会携带所有符合 ...
- Canvas 最佳实践(性能篇)
Canvas 想必前端同学们都不陌生,它是 HTML5 新增的「画布」元素,允许我们使用 JavaScript 来绘制图形.目前,所有的主流浏览器都支持 Canvas. Canvas 最常见的用途是渲 ...
- web前端开发最佳实践笔记
一.文章开篇 由于最近也比较忙,一方面是忙着公司的事情,另外一方面也是忙着看书和学习,所以没有时间来和大家一起分享知识,现在好了,终于回归博客园的大家庭了,今天我打算来分享一下关于<web前端开 ...
- 给JavaScript初学者的24条最佳实践
.fluid-width-video-wrapper { width: 100%; position: relative; padding: 0 } .fluid-width-video-wrapp ...
- 给JavaScript初学者的24条最佳实践(share)
不错的文章,留个备份 原文链接: net.tutsplus 翻译: 伯乐在线- yanhaijing译文链接: http://blog.jobbole.com/53199/ 作为“30 HTML和 ...
- atitit. web 在线文件管理器最佳实践(1)--- elFinder 的使用流程解决之道 。打开浏览服务器文件夹java .net php
atitit. web 在线文件管理器最佳实践(1)--- elFinder 的使用流程解决之道 .打开浏览服务器文件夹java .net php 1. 环境:::项目java web,需要打开浏览服 ...
- 给JavaScript初学者的24条最佳实践(转:http://www.cnblogs.com/yanhaijing/p/3465237.html)
作为“30 HTML和CSS最佳实践”的后续,本周,我们将回顾JavaScript的知识 !如果你看完了下面的内容,请务必让我们知道你掌握的小技巧! 1.使用 === 代替 == JavaScript ...
- web移动开发最佳实践之html篇
一.前言 在目前的移动应用开发大潮下,使用web技术进行移动应用开发正变得越来越流行,它主要使用html5.css3.js等技术,在跨平台性.可移植性方面具有无可比拟的优势,特别适合开发对性能要求不太 ...
- 转载----给JavaScript初学者的24条最佳实践
给JavaScript初学者的24条最佳实践 1.使用 === 代替 == JavaScript 使用2种不同的等值运算符:===|!== 和 ==|!=,在比较操作中使用前者是最佳实践. “如果 ...
随机推荐
- 深入JS系列学习3
深入JS系列学习3 深入理解JavaScript系列(9):根本没有"JSON对象"这回事! 很多JavaScript开发人员都错误地把JavaScript对象字面量(Object ...
- G - Arctic Network - poj2349
在北极圈有一些基地,这些基地需要建立通讯网络,他们可以通过卫星直接通信或者无线通信,基地有S个卫星,N个基地,不过无线通信的传输距离是D,距离越远费用越高,现在想知道D最小是多少. 分析:使用krus ...
- 转:ORM框架
转自 程序员成长之路:http://blog.csdn.net/zxc22436/article/details/6875220 对象关系映射(ORM)提供了概念性的.易于理解的模型化数据的方法.OR ...
- Gradle构建Java Web应用(转)
转自:http://www.blogjava.net/jiangshachina/archive/2014/02/03/409285.html 本文是发布在java.net上的一篇摘自于<Gra ...
- 【建模】UML类关系分析
一.UML类关系分析 1.关联(asociation) 一般是一方拥有另一方对象的指针.箭头的方向是访问方向. 2.聚合(Aggregation)和组合(Composition) 聚合和关联一般不做区 ...
- lesson4:使用锁Lock来解决重复下单的问题
demo源码:https://github.com/mantuliu/javaAdvance 中的类Lesson4IndependentLock 在上一节中,我们分析了Lock的源代码并一起实践了粗粒 ...
- 032数值的整数次方(keep it up)
剑指offer中题目:http://ac.jobdu.com/problem.php? pid=1514 题目描写叙述: 给定一个double类型的浮点数base和int类型的整数exponent. ...
- hash表的创建
功能:创建一个hash table.假设有处理冲突,则採用再散列法放置该元素 代码參考<零基础学数据结构> 代码例如以下: root@ubuntu:/mnt/shared/appbox/h ...
- Project Euler problem 61
题意很明了. 然后我大概的做法就是暴搜了 先把每个几边形数中四位数的处理出来. 然后我就DFS回溯着找就行了. 比较简单吧. #include <cstdio> #include < ...
- android中网络操作使用总结(http)
Android是作为智能手机的操作系统,我们开发的应用,大多数也都须要连接网络,通过网络发送数据.获取数据,因此作为一个应用开发人员必须熟悉怎么进行网络訪问与连接.通常android中进行网络连接通常 ...