正确看待HTML5的语法变化

时间:2022-10-25 13:30:50

也许会有人问:“HTML4已经很普及了,如果改变基础语法,会不会有什么影响?”

  我们都知道,在HMTL5之前几乎没有符合标准规范的Webu浏览器!在这种情况下,各个浏览器之间的互相兼容性和互操作性在很大程度上取决于网站建设开发者的努力,而浏览器本身始终是存在缺陷的。

  前面章节讲过,HTML5就是把解决各Web浏览器的兼容性作为目标的。所以各Web浏览器的供应商们可以把HTML5分析器集中封装在自己的浏览器中。

  最新的Firefox(默认为4.0以后的版本)与WebKit浏览器引擎中都迅速封装了HTML使用的分析器,IE与Opera也在努力加快对HTML5的支持,浏览器兼容性的提高指日可待!

  ***扩展知识:***

   HTML语法是在SGML语言的基础上建立的。但是SGML语法很复杂,要开发能够解析SGML语法的程序也很不容易,所以很多浏览器都不包含SGML 分析器。一次,虽然HTML基本上遵从SGML语法,但是对于HTML的执行在各个浏览器之前没有一个统一的标准。所以也就有了HTML5为之努力实现各 浏览器见的标准。

  SGML(Standard Generalized Markup Language)标准通用标记语言,是现时常用的超文本格式的最高层次标准,是可以定义标记语言的元语言,甚至可以定义不必采用< >的常规方式。由于SGML的复杂,因而难以普及。

  SGML例子:

<QUOTE TYPE="example"
typically something like <ITALICS>this</ITALICS

</QUOTE>

---------------------------------------------------------------------------------------------------------------------------------------

现在世界知名的主流浏览器有:Internet Explore、Chrome、Firefox、Safari、Opera等,他们早在2010年就已经纷纷表示大力支持HTML5,时间轴如下:

  2010年3月16日,微软在MIX10技术大会上宣布IE9已经推出,将更多支持CSS3和HTML5等互联网浏览通用标准。

  2010年2月19日,谷歌项目经理伊安-费特通过博客宣布谷歌Chrome将一直积极发展HTML5项目。

  2010年6月7日,苹果在开发者大会宣布发布Safari 5,这款浏览器支持10个以上的HTML5新技术,包括:全屏播放、HTML5视频、HTML5地理位置、HTML5切片元素、HTML5可拖动属性等等。

  2010年5月5日,Opera公司首席技术Hakon Wium Lie,号称“CSS之父”也认为,HTML5与CSS3将是全球互联网发展的未来趋势。

  2012年7月,Mozila推出Firfox4,已经对HTML5是完全级别的支持。

--------------------------------------------------------------------------------------------------------------------------------------------

HTML5的意图是要把Web上存在的各种问题,一并解决。那么Web上存在哪些问题,HTML5是如何解决这些问题的呢?

   1.Web浏览器之间的兼容性很低。解决方法:HTML5详细分析各个浏览器所具有的的功能,然后以此为基础,要求这些浏览器所有内部功能符合一个通用 标准。这样,各浏览器都能正常运行的可能性大大提高。而且,今后开发者开发出来的Web功能只要复合通用标准,Web浏览器也都愿意封装该功能。

  2.文档结构不够明确。解决方法:HTML5中,追加了很多跟结构相关的元素。不仅如此,还结合了包括微格式、无障碍应用在内的各种各样的周边技术。

  3.Web应用程序功能受到限制。解决方法:HTML5已经开始提供各种各样Web应用上的新API,各浏览器也在快速封装这些API,HTML5已经使富Web应用的实现变成了可能。

正确看待HTML5的语法变化的更多相关文章

  1. HTML5 标签语法变化和使用概念

    1.H5与H4的区别 概念的变化: H5更注重内容与结构,不再只专注于表现. 声明与标签: 新的声明背简化: <!DOCTYPE html> <meta charset=utf-8& ...

  2. Swift3&period;0语法变化

    写在前面 首先和大家分享一下学习新语法的技巧:用Xcode8打开自己的Swift2.3的项目,选择Edit->Convert->To Current Swift Syntax- 让Xcod ...

  3. 正确看待POW与POS&comma;总结与区分

    POW:Proof of Work,工作证明. 比特币在Block的生成过程中使用了POW机制,一个符合要求的Block Hash由N个前导零构成,零的个数取决于网络的难度值.要得到合理的Block ...

  4. 前端面试之HTML5的新变化

    前端面试之HTML5的新变化 H5新增语义化标签 头部标签 <header> :头部标签 <nav> :导航标签 <article> :内容标签 <secti ...

  5. Vue2&period;0中v-for迭代语法变化(key、index)【转】

    转自:http://blog.csdn.net/sinat_35512245/article/details/53966788 Vue2.0的代码中发现 $key这个值并不能渲染成功,问题如下:但是v ...

  6. 浅析PHP7新功能及语法变化总结

    标量类型声明 有两种模式: 强制 (默认) 和 严格模式. 现在可以使用下列类型参数(无论用强制模式还是严格模式): 字符串(string), 整数 (int), 浮点数 (float), 以及布尔值 ...

  7. Vue2&period;0中v-for迭代语法变化(key、index)

    语法发生了变化:http://blog.csdn.net/sinat_35512245/article/details/53966788 新数组语法 value in arr (value, inde ...

  8. HTML5的新变化

    1.新的html5文件类型,仅需申明在html的第一行,即 <!DOCTYPE html> 2.图形元素 figure ,将<figure>与<figcaption&gt ...

  9. html5&plus;监听设备加速度变化信息

    watchAcceleration 监听设备加速度变化信息 Number plus.accelerometer.watchAcceleration( successCB, errorCB, optio ...

随机推荐

  1. js滚动加载插件

    function $xhyload(o){ var that=this; if(!o){ return; }else{ that.win=$(o.config.obj); that.qpanel=$( ...

  2. 自己保留:data provider

    <system.data>    <DbProviderFactories >      <add name="MySQL Data Provider&quot ...

  3. Axure一点2

    4:找茬:先安装图片,在不同的地方安上动态面板(命名为左一),在动态面板上双击,添加动态,进去动态后添加矩形改色,设置透明度为0,回到主页面.并设为隐藏,复制到另一面(命名为右一).在右一上添加图像热 ...

  4. Java---IO加强&lpar;3&rpar;-IO流的操作规律

    一般写关于操作文件的读取的几个通用步骤!!! 1.明确源和目的. 源:InputStream Reader 一定是被读取的. 目的:OutputStream Writer 一定是被写入的. 2.处理的 ...

  5. std&colon;&colon;vector的分片拷贝和插入

    一般我们在用Qt的QByteArrary或者List的时候,会有相应的append的方法,该函数,就是把数据加入末尾.但是std::vector就没有相应的方法.但是我们可以用insert方法来实现: ...

  6. Ajaxterm

    Index of /software/ajaxterm Ajaxterm Since Mon Feb 28 03:22:42 CET 2011, hosted here: github.com/ant ...

  7. ElasticSearch查询 第四篇:匹配查询(Match)

    <ElasticSearch查询>目录导航: ElasticSearch查询 第一篇:搜索API ElasticSearch查询 第二篇:文档更新 ElasticSearch查询 第三篇: ...

  8. 1018 Public Bike Management

    There is a public bike service in Hangzhou City which provides great convenience to the tourists fro ...

  9. python hashillb 模块

    hashlib主要提供字符加密功能,将md5和sha模块整合到了一起,支持md5,sha1, sha224, sha256, sha384, sha512等算法 import hashlib # ## ...

  10. Kafka 温故&lpar;一&rpar;:Kafka背景及架构介绍

    一.Kafka简介 Kafka是分布式发布-订阅消息系统.它最初由LinkedIn公司开发,使用Scala语言编写,之后成为Apache项目的一部分.Kafka是一个分布式的,可划分的,多订阅者,冗余 ...