为什么在IE9中对于HTML5标准中的离线应用程序以及CSS3中的一部分不提供支持?笔者间接了解到了这个原因。

微软日前已经发布了Internet Explorer 9(以下简称IE9)正式版。在该版本中,微软遵循他们的发展战略,对于作为最新Web标准的HTML5与CSS3中大多数功能提供了支持。

同时,微软也准备将IE9应用在Windows Phone 7中使用。IE9无疑成为了微软的Internet战略中非常重要的一个环节。

但是,现在公布的IE9中,应该被用来与Firefox,Safari,Chrome等浏览器相竞争的HTML5中的几个重大功能却没有得到支持。

现将W3C公布的HTML5以及与其相关的主要功能列举如下:

  1. 通信相关(Web Sockets, Server-Sent Events等等)
  2. CSS3样式
  3. 设备定位功能(取得地理位置信息等等)
  4. 3D以及画面显示效果(WebGL,CSS3的3D功能等等)
  5. 多媒体(Audio/Video等等)
  6. 性能及功能性的提高(Web Workers,XHR2等等)
  7. 语义性(Microdata微数据等等)
  8. 离线及本地存储(App Cache,本地存储,IndexedDB等等)

在这之中,即使离线也可以使用Web网页,Web应用程序的功能,使用JavaScript也可以使用多线程的Web Workers,以及CSS3中的几个功能都没有在IE9中得到支持。

应该对于HTML5提供积极支持的微软,为什么没有在IE9中对这几个重要功能提供支持呢?如何这样的话在Windows Phone7中使用IE9又有什么必要呢?这个理由在微软的官方人士那里得到了回答。

提问:首先确认一个事实,IE9中对于HTML5的离线功能等等的确不提供支持吗?

官方回答:的确如此,大致上来说,关于离线功能,以及CSS3中的几个功能,在IE9中并不支持。

首先针对CSS3做一个说明,CSS的属性中的供应商前缀(为了在其他供应商所提供的浏览器中使用而在CSS的属性前增加的“-moz-”,“-webkit-”等等前缀。)在IE9中不提供支持。

在IE9中提倡“统一标记”,就是说同样的属性,标记应该在任何浏览器中的渲染效果应该都是同样的。也就是说为了在各供应商所提供的浏览器中使用而人为增加的各种前缀是不符合这个概念的,所以不提供支持。

还有一个问题就是关于离线应用。这是因为它的一个相关功能IndexedDB的实现方法也还没有被确定下来,所以与之密切相关的离线应用程序功能也暂时不被支持。

现在使用IE的有个人,开发者,企业等等各种客户。因此无论如何对于新的功能提供的支持必须要采取一种保守的做法。

现在我们所提供的支持都是非常安全稳定的,今后也将优先对那些在用户那里获得非常高的渴望度的功能进行支持。

不管什么功能一下子全部提供支持,或者说为了迎合企业用户而特意对某些功能提供支持的话,这种支持是十分不安全、不稳定的,所以我们不希望采取这种做法。

但是,对于IE功能的加强肯定不会停止在IE9这个版本上面,所以我们今后肯定还会对HTML5/CSS3继续提供新的支持。

提问:事实上在IE9中,作为HTML5主要功能之一的离线功能与WebWorker功能没有提供支持这件事是最近被民众所关注的一件事。在宣称对于HTML5提供支持的同时,不说清楚支持什么功能,不支持什么功能,这种宣传不是等于没有吗?

官方回答:并不是要特意隐瞒,应该是在忙于对于IE9这种新的浏览器做一个比较全面地介绍,而没有考虑到这个问题。当然,在对于各API各属性进行单独介绍的时候,肯定是有一个比较明确的说明的。

文章引用地址:http://www.iefans.net/ie9-html5-shuxing-buzhichi-yuanyin/ 作者:iefans

IE9对HTML5中一部分属性不提供支持的原因的更多相关文章

  1. HTML5中meta属性大集合

    1.声明文档的字符编码 <meta charset='utf-8'> 2.声明文档的兼容模式 <meta http-equiv="X-UA-Compatible" ...

  2. [转] HTML5中meta属性的使用详解

    meta属性在HTML中占据了很重要的位置.如:针对搜索引擎的SEO,文档的字符编码,设置刷新缓存等.虽然一些网页可能没有使用meta,但是作为正规军,我们还是有必要了解一些meta的属性,并且能够熟 ...

  3. HTML5中meta属性

    meta属性在HTML中占据了很重要的位置.如:针对搜索引擎的SEO,文档的字符编码,设置刷新缓存等.虽然一些网页可能没有使用meta,但是作为正规军,我们还是有必要了解一些meta的属性,并且能够熟 ...

  4. HTML5中meta属性的使用详解

    meta属性在HTML中占据了很重要的位置.如:针对搜索引擎的SEO,文档的字符编码,设置刷新缓存等.虽然一些网页可能没有使用meta,但是作为正规军,我们还是有必要了解一些meta的属性,并且能够熟 ...

  5. 详解HTML5中rel属性的prefetch预加载功能使用

    在HTML5中,有个很有用但常被忽略的特性,就是预先加载(prefetch),它的原理是: 利用浏览器的空闲时间去先下载用户指定需要的内容,然后缓存起来,这样用户下次加载时,就直接从缓存中取出来,效率 ...

  6. html5中contenteditable属性如果过滤标签,过滤富文本样式

    ​​在div中使用contenteditable=”true”可以达到模拟输入框的效果,但是当我们复制其他网页内容进去的时候,会发现连带的样式也一起复制进去了.很明显我们不需要复制富文本样式,那么如何 ...

  7. 使用html5中required属性

    直接上代码 <form action="${pageContext.request.contextPath}/login/main.do" method="post ...

  8. 解决HTML5中placeholder属性兼容性的JQuery插件

    //调用方法 $(function () {   $(".pHolder").jason(); }); //HTML代码 <input type="text&quo ...

  9. html5中的选择器

    1.html5中的属性选择器 <body> <style type=text/css> <!--1>完全匹配选择器--> [id=test]{ color:r ...

随机推荐

  1. Python使用正则

    Python中使用正则的两种方式 在Python中有两只能够使用正则表达式的方式: 直接使用re模块中的函数 import re re_string = "{{(.*?)}}" s ...

  2. 解决python2.x文件读写编码问题

    转自: https://xrlin.github.io/%E8%A7%A3%E5%86%B3python2.x%E6%96%87%E4%BB%B6%E8%AF%BB%E5%86%99%E7%BC%96 ...

  3. linux驱动之一语点破天机

    <const 关键字> 在嵌入式系开发中,const关键字就是“只读”的意思   <为什么要ARM需要进行C语言环境的初始化> 在汇编情况下,指令的跳转,保护现场需要保存的数据 ...

  4. 深入剖析cpp对象模型

    C++对象模型可以概括为以下2部分: 1. 语言中直接支持面向对象程序设计的部分,主要涉及如构造函数.析构函数.虚函数.继承(单继承.多继承.虚继承).多态等等. 2. 对于各种支持的底层实现机制.在 ...

  5. Sass 基础教程

    0. Sass 文件后缀名 sass 有两种后缀名文件:一种后缀名为 sass,不使用大括号和分号:另一种就是我们这里使用的 scss 文件,这种和我们平时写的 css 文件格式差不多,使用大括号和分 ...

  6. BZOJ3996 TJOI2015线性代数

    先把矩阵式子化简 原式=∑i=1n∑j=1nA[i]∗B[i][j]∗A[j]−∑i=1nA[i]∗C[i] 因此我们发现问题转化为选取一个点所获收益是B[i][j],代价是C[i][j] 这是一个最 ...

  7. luoguP5108 仰望半月的夜空 [官方?]题解 后缀数组 / 后缀树 / 后缀自动机 + 线段树 / st表 + 二分

    仰望半月的夜空 题解 可以的话,支持一下原作吧... 这道题数据很弱..... 因此各种乱搞估计都是能过的.... 算法一 暴力长度然后判断判断,复杂度\(O(n^3)\) 期望得分15分 算法二 通 ...

  8. Java混剪音频

    分享一个之前看过的程序,可以用来剪辑特定长度的音频,将它们混剪在一起,思路如下: 1.使用 FileInputStream 输入两个音频 2.使用 FileInputStream的skip(long ...

  9. INFORMATION_SCHEMA.COLUMNS-表的字段信息

    当前数据库中当前用户可以访问的每一个列在该视图中占一行.INFORMATION_SCHEMA.COLUMNS 视图以 sysobjects.spt_data type_info.systypes.sy ...

  10. 基于RBGD的mapping

    最近学习RGBD的SLAM,收集了两个RGBD的mapping的开源工具包 1.RGBDSlam2 a.安装方法: #准备工作空间 source /opt/ros/indigo/setup.bash ...