HTML5对比HTML4的主要改变和改进总结


Posted in HTML / CSS onMay 27, 2016

这段时间一直在帮老师做项目比较忙,经常课都没去上,就泡在实验室里,也没什么时间看其他东西了。我在项目中分配到了前端页面设计这一块,有时候浏览网页看到移动端APP和html5最近都比较火的,随着移动互联网快速发展,尤其是4G时代已经来临,加上微软在win10中搭载了新的浏览器edge取代了IE的地位,所以现在很多网站都开始抛弃IE朝着html5发展,这是一种趋势,尤其是在移动端网页这块,而PC端在不同浏览器之间还是有部分兼容性问题亟待解决,但是不久的将来,html5将会成为浏览器标记语言的霸主。

什么是html5?
html5最先由WHATWG(Web 超文本应用技术工作组)命名的一种超文本标记语言,随后与W3C组织的xhtml2.0(标准)相结合,产生现在最新一代的超文本标记语言。可以简单点理解成:HTML 5 ≈ HTML+CSS 3+javascript+API

我们现在web前端开发的静态网页,一般都是html4.01。同时符合W3C规范。那么他们两者直接又有什么实质性的区别呢?

1.在文档类型声明上

html:

XML/HTML Code复制内容到剪贴板
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"

    >  
  2. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">  

html5:

XML/HTML Code复制内容到剪贴板
    XML/HTML Code复制内容到剪贴板
    1. <!DOCTYPE html>    
    由这两者对比可见:在文档声明上,html4有很长的一段代码,并且很难记住这段代码,想必很多人都是靠工具直接生成的吧?而html5却是不同, 只有简简单单的声明,这也方便人们的记忆。

2.设置页面字符编码
在HTML5中可以使用对<meta>元素直接追加charset属性的方式来指定字符编码, 如下所示:

html:<meta charset= “UTF-8 ”>

html5:<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

从HTML5开始, 对于文件的字符编码推荐使用UTF-8。

3.在结构语义上

html:没有体现结构语义化的标签,我们通常都是这样来命名的div id="header".这样表示网站的头部。

html5:在语义上却有很大的优势。提供了一些新的标签,比如:header、article、footer

提供这样的标签有什么样的好处呢?我觉得最主要还是在SEO的优化上,不管是我们自己来对网页模块命名,还是有这样的标签。因为做网站 最终的目的只有一个,那就是盈利。想盈利的话,就只有通过SEO优化的技术,把你网站排名做上来,这样你的网站才有价值,正是这一点,html5符合了这一点。为什么这么说呢?因为他定义的这些标签,更加有利于优化,蜘蛛能识别你。

4.其他新增内容
新增的input类型包括:number(数字),date(日期),color(颜色),range(范围)等等。

新的内联元素包括 time、meter 和 progress。

新的内嵌元素有 video 和 audio。新的交互元素有 details、datagrid 和 command。

5.<canvas>标签替代Flash
Flash给很多Web开发者带来了麻烦,要在网页上播放Flash需要一堆代码和插件。<canvas>标签使得开发者只要使用一个标签就 能和用户产生UI交互。虽然目前<canvas>标签还不能实现Flash的所有功能,但是很快<canvas>就会让 Flash看起来老土,哈哈!

6.废除的元素
能用css替代的元素:对于basefont、big、font、s、tt、u、这些元素,由于它们的功能都是纯粹的 画面展示服务的,而HTML5中提倡把画面展示性功能放在css样式中统一编辑,所以将这些元素废除。

不再使用Frame框架:由于frame框架对网页可用性存在负面影响,html5中不支持frame,只支持iframe框架,或者用服务器创建的多个页面组成的复合页面的形式。

只有部分浏览器支持的元素:applet、bgsound、blink、marquee等元素。bgsound和marquee只被ie支持,被html5废除。其中applet元素可由embed元素或object元素替代,bgsound元素可由audio元素替代,marquee可以由javascript编程方式替代。

总结:虽然在前几年html5已经出来了,但是那时候因为不够成熟,时机不对,才没被兴起。在这互联网高速发展的时候,也是来临4G的时代。 我们还不学习hml5+css3我们就out了!

HTML / CSS 相关文章推荐
IE滤镜与CSS3效果(详细整理分享)
Jan 25 HTML / CSS
HTML5+CSS3 诱人的实例:3D立方体旋转动画实例
Dec 30 HTML / CSS
CSS3动画特效在活动页中的应用
Jan 21 HTML / CSS
HTML5仿手机微信聊天界面
Mar 18 HTML / CSS
用HTML5 Canvas API中的clearRect()方法实现橡皮擦功能
Mar 15 HTML / CSS
HTML5 Canvas 破碎重组的视频特效的示例代码
Sep 24 HTML / CSS
Html5如何唤起百度地图App的方法
Jan 27 HTML / CSS
HTML5 Web存储方式的localStorage和sessionStorage进行数据本地存储案例应用
Dec 09 HTML / CSS
全面解析HTML5中的标准属性与自定义属性
Feb 18 HTML / CSS
HTML5 canvas实现移动端上传头像拖拽裁剪效果
Mar 14 HTML / CSS
用html5绘制折线图的实例代码
Mar 25 HTML / CSS
浅谈关于html5中图片抛物线运动的一些心得
Jan 09 HTML / CSS
Html5实现用户注册自动校验功能实例代码
May 24 #HTML / CSS
用HTML5的canvas实现一个炫酷时钟效果
May 20 #HTML / CSS
深入理解HTML的FormData对象
May 17 #HTML / CSS
html5 实现客户端验证上传文件的大小(简单实例)
May 15 #HTML / CSS
【HTML5】Canvas绘制简单图片教程
May 13 #HTML / CSS
HTML5实现页面切换激活的PageVisibility API使用初探
May 13 #HTML / CSS
HTML5中的强制下载属性download使用实例解析
May 12 #HTML / CSS
You might like
大师制作的中短波矿石收音机
2020/04/02 无线电
PHP新手上路(九)
2006/10/09 PHP
关于mysql 字段的那个点为是定界符
2007/01/15 PHP
Fatal error: Call to undefined function curl_init()解决方法
2010/04/09 PHP
php4与php5的区别小结(配置异同)
2011/12/20 PHP
ThinkPHP中Common/common.php文件常用函数功能分析
2016/05/20 PHP
php实现的pdo公共类定义与用法示例
2017/07/19 PHP
linux mint下安装phpstorm2020包括JDK部分的教程详解
2020/09/17 PHP
JAVASCRIPT下判断IE与FF的比较简单的方式
2008/10/17 Javascript
input 高级限制级用法
2009/03/26 Javascript
一组JS创建和操作表格的函数集合
2009/05/07 Javascript
javascript 面向对象的JavaScript类
2010/05/04 Javascript
Jquery之美中不足小结
2011/02/16 Javascript
动感效果的TAB选项卡jquery 插件
2011/07/09 Javascript
CSS+JS实现点击文字弹出定时自动关闭DIV层菜单的方法
2015/05/12 Javascript
浅析JS中对函数function的理解(基础篇)
2016/10/14 Javascript
ES6正则表达式的一些新功能总结
2017/05/09 Javascript
vue项目中常见问题及解决方案(推荐)
2019/10/21 Javascript
VUE+Element实现增删改查的示例源码
2020/11/23 Vue.js
Python 功能和特点(新手必学)
2015/12/30 Python
Python做文本按行去重的实现方法
2016/10/19 Python
Python排序搜索基本算法之堆排序实例详解
2017/12/08 Python
python学生管理系统代码实现
2020/04/05 Python
python opencv 图像尺寸变换方法
2018/04/02 Python
让Django支持Sql Server作后端数据库的方法
2018/05/29 Python
python 统计列表中不同元素的数量方法
2018/06/29 Python
Python 获取主机ip与hostname的方法
2018/12/17 Python
canvas 阴影和图形变换的示例代码
2018/01/02 HTML / CSS
澳大利亚正品化妆品之家:Cosmetic Capital
2017/07/03 全球购物
洛佩桑酒店官方网站:Lopesan Hotels
2019/04/15 全球购物
学校消防演习方案
2014/02/19 职场文书
马云北大演讲完整版:真心话,什么才是阿里的核心竞争力?
2014/04/04 职场文书
2014年新生军训方案
2014/05/01 职场文书
教师纪念9.18事件演讲稿范文
2014/09/14 职场文书
放射科岗位职责
2015/02/14 职场文书
学生会辞职信
2015/03/02 职场文书