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动画和opacity透明度实现呼吸灯效果
Aug 09 HTML / CSS
CSS3 网页下拉菜单代码解释 中文翻译
Feb 27 HTML / CSS
实例讲解使用CSS实现多边框和透明边框的方法
Sep 08 HTML / CSS
CSS3动画:5种预载动画效果实例
Apr 05 HTML / CSS
浅谈css3新单位vw、vh、vmin、vmax的使用详解
Dec 01 HTML / CSS
仿酷狗html5手机音乐播放器主要部分代码
May 15 HTML / CSS
HTML5 Video标签的属性、方法和事件汇总介绍
Apr 24 HTML / CSS
HTML5新标签兼容——&gt; 的两种方法
Sep 12 HTML / CSS
canvas如何实现多张图片编辑的图片编辑器
Mar 10 HTML / CSS
利用html+css实现菜单栏缓慢下拉效果的示例代码
Mar 30 HTML / CSS
纯html+css实现Element loading效果
Aug 02 HTML / CSS
CSS3实现指纹特效代码
Mar 17 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
php不用内置函数对数组排序的两个算法代码
2010/02/08 PHP
php防止恶意刷新与刷票的方法
2014/11/21 PHP
PHP各种常见经典算法总结【排序、查找、翻转等】
2019/08/05 PHP
jquery multiSelect 多选下拉框
2010/07/09 Javascript
JS随即打乱数组实现代码
2012/12/03 Javascript
详解JavaScript中的构造器Constructor模式
2016/01/14 Javascript
Vue 进阶教程之v-model详解
2017/05/06 Javascript
详解vue嵌套路由-query传递参数
2017/05/23 Javascript
vue解决跨域路由冲突问题思路解析
2017/11/03 Javascript
简单的三步vuex入门
2018/05/20 Javascript
微信小程序实现折叠展开效果
2018/07/19 Javascript
node链接mongodb数据库的方法详解【阿里云服务器环境ubuntu】
2019/03/07 Javascript
Vue实现点击按钮复制文本内容的例子
2019/11/09 Javascript
Python中常用信号signal类型实例
2018/01/25 Python
用pycharm开发django项目示例代码
2019/06/13 Python
pandas实现to_sql将DataFrame保存到数据库中
2019/07/03 Python
pytorch中torch.max和Tensor.view函数用法详解
2020/01/03 Python
Python使用Tkinter实现转盘抽奖器的步骤详解
2020/01/06 Python
浅谈Django QuerySet对象(模型.objects)的常用方法
2020/03/28 Python
django实现更改数据库某个字段以及字段段内数据
2020/03/31 Python
Python定时任务APScheduler原理及实例解析
2020/05/30 Python
python中adb有什么功能
2020/06/07 Python
Marmot土拨鼠官网:美国专业户外运动品牌
2018/01/11 全球购物
阿联酋彩妆品牌:OUD MILANO
2019/10/06 全球购物
开会迟到检讨书
2014/01/08 职场文书
单身联谊活动方案
2014/01/29 职场文书
开学典礼演讲稿
2014/05/23 职场文书
学校安全教育月活动总结
2014/07/07 职场文书
幼儿学前班评语
2014/12/29 职场文书
爱护环境卫生倡议书
2015/04/29 职场文书
第二次离婚起诉书
2015/05/18 职场文书
同乡会致辞
2015/07/30 职场文书
2016年“6.26”禁毒宣传月系列活动总结
2016/04/05 职场文书
浅谈JS和Nodejs中的事件驱动
2021/05/05 NodeJs
PyTorch梯度裁剪避免训练loss nan的操作
2021/05/24 Python
win10如何开启ahci模式?win10开启ahci模式详细操作教程
2022/07/23 数码科技