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 相关文章推荐
CSS3之边框多颜色Border-color属性使用示例
Oct 11 HTML / CSS
用CSS3实现瀑布流布局的示例代码
Nov 10 HTML / CSS
CSS3 对过渡(transition)进行调速以及延时
Oct 21 HTML / CSS
css3利用transform变形结合事件完成扇形导航
Oct 26 HTML / CSS
HTML5 Canvas如何实现纹理填充与描边(Fill And Stroke)
Jul 15 HTML / CSS
HTML5 预加载让页面得以快速呈现
Aug 13 HTML / CSS
HTML5中drawImage用法分析
Dec 01 HTML / CSS
HTML5事件方法全部汇总
May 12 HTML / CSS
浅谈html5增强的页面元素
Jun 14 HTML / CSS
Html5调用手机摄像头并实现人脸识别的实现
Dec 21 HTML / CSS
html中相对位置与绝对位置的具体使用
May 15 HTML / CSS
td 内容自动换行 table表格td设置宽度后文字太多自动换行
Dec 24 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
1 Tube Radio
2021/03/02 无线电
解析php中反射的应用
2013/06/18 PHP
PHP扩展模块Pecl、Pear以及Perl的区别
2014/04/09 PHP
CodeIgniter CLI模式简介
2014/06/17 PHP
php中多维数组按指定value排序的实现代码
2014/08/19 PHP
基于php双引号中访问数组元素报错的解决方法
2018/02/01 PHP
laravel配置Redis多个库的实现方法
2019/04/10 PHP
Laravel框架路由管理简单示例
2019/05/07 PHP
深入理解JavaScript系列(11) 执行上下文(Execution Contexts)
2012/01/15 Javascript
js实现倒计时(距离结束还有)示例代码
2013/07/24 Javascript
js获取URL的参数的方法(getQueryString)示例
2013/09/29 Javascript
Angularjs 滚动加载更多数据
2016/03/17 Javascript
JS弹性运动实现方法分析
2016/12/15 Javascript
详解angularJs中关于ng-class的三种使用方式说明
2017/06/02 Javascript
利用vue开发一个所谓的数独方法实例
2017/12/21 Javascript
基于原生js实现九宫格算法代码实例
2020/07/03 Javascript
[04:03]DOTA2肉山黑名单梦之声 风暴之灵中文配音鉴赏
2013/07/03 DOTA
天翼开放平台免费短信验证码接口使用实例
2013/12/18 Python
python实现字典(dict)和字符串(string)的相互转换方法
2017/03/01 Python
python下解压缩zip文件并删除文件的实例
2018/04/24 Python
django框架模板中定义变量(set variable in django template)的方法分析
2019/06/24 Python
如何使用python操作vmware
2019/07/27 Python
python内置模块collections知识点总结
2019/12/19 Python
使用 tf.nn.dynamic_rnn 展开时间维度方式
2020/01/21 Python
使用Python对Dicom文件进行读取与写入的实现
2020/04/20 Python
如何利用python读取micaps文件详解
2020/10/18 Python
使用CSS Grid布局实现网格的流动
2014/12/30 HTML / CSS
英国天然保健品网站:Simply Supplements
2017/03/22 全球购物
英语专业毕业生求职简历的自我评价
2013/10/24 职场文书
教师岗位职责范本
2013/12/29 职场文书
保密协议书范本
2014/04/22 职场文书
小学生环保倡议书
2014/05/15 职场文书
土建专业毕业生自荐书
2014/07/04 职场文书
2015年个人现实表现材料
2014/12/10 职场文书
Python基础数据类型tuple元组的概念与用法
2021/08/02 Python
vue使用refs获取嵌套组件中的值过程
2022/03/31 Vue.js