`
ilovejsj
  • 浏览: 205571 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

CSS expression在IE8里正式退出历史舞台

阅读更多
转载
http://www.never-online.net/blog/article.asp?id=246
说实话,对于移除这个旧有功能对于我来说,我是欢心鼓舞的。

因为我在开发和应用当中一向不用expression来处理,虽然它确实是非常方便,比如,一句话就可以大概的解决position:fixed的问题。可以不用把此问题带到真正的逻辑上去。

我有点象站着说话不腰疼的样子。那么我们来列一下CSS expression的问题。
1、效率低。这个是众所周知的问题。
2、不标准。expression是个IE only的产品,在w3c的大潮中,他已经渐渐被人遗忘了。
3、不安全。假设某个站点要开放CSS给用户编辑,那么这个expression/CSS里可以让脚本运行的bug让人头疼不已。比如(请用IE 6运行):

<!doctype html public '-//w3c//dtd html 4.01//en' 'http://www.w3.org/tr/html4/strict.dtd'>
<html>
<head>
<meta http-equiv=content-type content="text/html; charset=utf-8">
<title>ie css javascript</title>

<style>

body{

font-family:
"Tahoma"

d = new Date
document.body.insertAdjacentHTML('AfterBegin', '<h2 class="hack">Embedding Javascript int5o CSS on IE6 on ' + d + ' </h2>' )
alert('done')
;
/*Some funny ASI Craracters here*/
($_$)&(%_%)^(@__*)/~~>BaCkGrOuNd-ImAgE:url(\ja\vasc\ri\pt:(Function(document.body.currentStyle.fontFamily))());
}


.hack{
background:red;
padding:12px;
border:double 4px yellow;
color:#fff;
font-family:"Arial Black";
}

</style>
</head>
<body>
</body>
</html>

有人欢喜有人忧,对于以前用expression的同学来说,得重新改代码了。不过这从另一方面来说也是好事,可以更好的促进标准的执行。
分享到:
评论
1 楼 colver 2010-10-14  
就是 早该退出来了   各种兼容性的考虑  真叫个头痛  就应该都统一算了  哈哈

相关推荐

Global site tag (gtag.js) - Google Analytics