IE 8 提出“超级标准模式”
作者:随想飞翔 来源:随想飞翔 发布时间:2008-01-24 19:26:00
W3C终于发布了第一个HTML5草案,大家还沉溺在HTML2XHTML转换的快乐和痛苦中时,却又突然发现,HTML5和XHTML2,到底谁是未来?……,当然,HTML5和XHTML2会保持最大兼容性,W3C和WASP肯定比我们更清楚这一点的重要性。不过如果都“最大兼容”了,为何不统一呢?HTML那种不标准的代码解析起来可不怎么好玩。
我想抱怨的是,W3C的效率那是相当出名(就像IE实现标准的效率),现在第一个草案,正式定稿最早是2010年,这么算起来,要等IE支持(我坚信那时IE仍是主流浏览器),恐怕我们的显示设备原理和效果都升级换代了。到时再用一份“妥协”过的“标准”——拜托,这可是IT产业。很多美好的标准或技术,从我们开始期盼,到我们都不再编码,它都不会实现。
其实HTML5这事儿没多大动静,闹得正欢的是IE8实现“超级标准模式”的事儿,IE开发团队为了让只认识IE的,用IE6/7的所谓“符合标准”代码,错误的实现他们想要的样式的网页作者们不用修改他们的网页,决定让IE8在“标准模式”下实现IE7的显示结果,而实现“更正确”的标准需要在网页中加入一段META信息。
嗯,技术一点来说,IE6依靠DOCTYPE来区分怪癖模式(IE5.5或更早版本的绘制网页方式)和标准模式,但IE6实现的“标准模式”依然有许多错误,而当IE7改进“标准模式”时,这些“错误的标准模式的代码”就会展现出错误的样式。为了避免该问题再发生在IE8身上,IE团队决定使用一个META标签或HTTP包header来告诉浏览器,用“超级标准模式”来绘制网页,而现在的标准网页将默认为IE7的绘制方式。
再直白(或讽刺)一点,如果ACID2测试网页要想在IE8下正确表现,ACID2测试需要修改网页,加上一个META信息,告诉IE8用“超级标准模式”。真CCTV。
为过去的部分错误网页,IE要牺牲未来的网页。微软总是在用一个错误掩盖另一个错误,所以,我们总是要疲于解决浏览器间(准确地说是IE和其他浏览器)的兼容性问题。“不破坏现有网络”总是被当作微软的借口,事实上他们每次发布新版IE都“履行”了这点,总是有新bug推翻了这个借口。
当然,这个想法看上去,不是完全没有好处,至少我们可以让网页在IE下始终显示如一(来兼容MS犯下的错误)。可是,当IE9修正了IE8的错误标准时,我们该怎么办?如果还是需要IE条件注释或CSS HACK来解决的话,那这个标签有什么意义?还是说,微软以为这个标签就可以让大家都总是平滑听话的升级到最新的IE,就像Opera社区那样?
想让IE永远用最新的版本绘制网页?
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
或者用HTML5的doctype
<!DOCTYPE html>
(IE6/7将以标准模式处理)
或者HTTP包header
X-UA-Compatible:IE=edge
反对的理由
未来的IE9/9+能否真的正确兼容过去的版本?
IE的体积会不会越来越大?比如1G?
浪费互联网流量资源。
如果实现多引擎间交互,比如主网页和内嵌iframe用不同版本的引擎时?
微软在鼓励大家用非标准代码开发网页?
期间的小版本如何处理?IE史上发生过补丁改变绘制的事情。
更多的安全漏洞?(绝大多数病毒都是通过IE网页漏洞传播的吧……)
部分评论:
是时候宣布浏览器间兼容性已经破产?
我们总是为MS修复网页,而不是MS为网页修复IE。
如果干掉IE,那么我们就没这么多问题了。
综合:A List Apart2篇,John Resig,Dean Edwards,Safari,Mozilla,456 Berea Street消息
大家的态度就像本文,基本是一边倒的要打到IE,不过不乏很多幽默评论 :) ——看英语看得我头大(而且还看的一知半解,上帝),各位看官有什么好的方法来解决IE这个问题吗?


猜你喜欢
- 博主一直在维护一个导出PDF的服务,但是这个服务导出的PDF文件是真的巨大,动辄就上百MB。这里面主要是图片占据了大多数体积,所以考虑在导出
- 字符串和切片(string and slice)string底层就是一个byte的数组,因此,也可以进行切片操作。package maini
- 先看看 allure 命令的帮助文档cmd 敲allure -hallure 命令的语法格式allure [options] [comman
- 目录迭代器生成器总结迭代器聊迭代器前我们要先清楚迭代的概念:通常来讲从一个对象中依次取出数据,这个过程叫做遍历,这个手段称为迭代(重复执行某
- 说起计算机中的时间,还有一些比较有意思的事,比如我们经常听到的Unix时间戳,UTC时间,格林威治时间等,从表示上来讲他们基本属于同一个东西
- SQL1: --1、查看表空间的名称及大小 SELECT t.tablespace_name, round(SUM(bytes / (102
- 作为收费应用方面的数据库管理员(DBA),公司首席信息官(CIO)经常邀请我与Sarbanes-Oxley审查员开会讨 * 司数据的安全与整合
- 当两个数包含小数进行运算的时候结果并不是正确的结果,而是出现了精度丢失的情况(小数点后面出现很多位)。问题所在:res.orderColor
- 我完成了更新我们在 Neutron的实时收入统计。在我花了一周的时间完成并且更新了我们的PHP脚本之后,我最终认决定开始使用Py
- 带农历的JavaScript日期时间,增加了农历使这款代码更具实用性,很不错,不但有农历,而且还可以显示民国计年,可以判断显示闰月、闰年等,
- 在Keras中可以自定义损失函数,在自定义损失函数的过程中需要注意的一点是,损失函数的参数形式,这一点在Keras中是固定的,须如下形式:d
- 环境准备:全局安装jade: npm install jade -g初始化项目package.json: npm init --yes安装完
- 谈及鼠标事件,就是在触发鼠标按钮后程序所做出相应的反应,但是不影响程序的整个线程。这有些像异步处理。鼠标事件响应不会一直等着我们去按而后续程
- 关于权限管理的思考最近用laravel设计后台,后台需要有个权限管理。权限管理实质上分为两个部分,首先是认证,然后是权限。认证部分非常好做,
- Microsoft SQL Server 2008将包含用于合并两个行集(rowset)数据的新句法。根据一个源数据表对另一个数据表进行确定
- 数据结构和算法算法:解决问题的方法和步骤评价算法的好坏:渐近时间复杂度和渐近空间复杂度。渐近时间复杂度的大O标记:- 常量时间复杂度 - 布
- <html> <head> <title> New Document </title> &l
- 代码如下:'******************************************** '函数名:I
- 这些存储过程如下: sp_makewebtask xp_cmdshell xp_dirtree xp_fileexist xp_termin
- 1. 需求概述最近接到一份PDF资料需要打印,奈何页面是如图所示的A3格式的,奈何目前条件只支持打印A4。我想要把每页的一个大页面裁成两个小