IE CSS Bug系列:noscript 幽灵

伯乐在线导读:IE 浏览器不支持很多 CSS 属性是出了名的,即便在支持的部分中,也是有很多 Bug 的。Zoffix Znet 整理了 IE 中的 CSS 问题,有简单的问题示例,也有解决方法。 这个系列共有 58 个指南,70 个解决方案。这篇由伯乐在线前端开发小组的 @szxw 翻译。(欢迎更多前端开发朋友来加入“前端开发小组。)

【提示】:IE CSS BUG 系列译文正在进行中,后续或有改动和调整,请不要转载本系列的译文

—————————————————————————–

noscript幽灵BUG

受影响版本

该BUG影响: IE8,IE7,IE6

表现

当script受支持时,<noscript>仍然会显示,只有边框和背景会显示。

教程日期

2009-07-19 15:53:21 星期日

描述

发现这个BUG首先要感谢 Position is Everything 。这个BUG除了像他们描述的那样在IE8下出现外,IE6和IE7也受到了影响,虽然并不严重。让我们看一下示例吧。

示例

根据这个BUG特性构造的一个示例在一个单独页面上。

HTML 代码:

CSS 代码:

 

<div>元素的作用只是触发,实际上,你可以用文本或者其他任何正常页面上会有的东西来替换它。当我们在把<noscript>元素的display属性设置为block的同时,也为它设置background和border。在IE8下,整个<noscript>元素以我们设置的宽度,高度带着边框和背景显示出来了,虽然没有显示里面的文本(我们在讨论script元素可用的情况下)。IE6和IE7下只显示了<noscript>元素的上(或者下?)边框。

 

解决方案

下面是按照解决方案类型排序的对上述问题的解决方案。

解决方案(JavaScript方案)

解决方案日期

2009-07-19 16:00:25 星期日

修复版本

所有受影响版本

描述

既然这个BUG在script可用的情况下才会出现,呢么我们可以用JavaScript来修复它。让我们先看一下修复后的示例: 根据这个BUG特性构造的一个示例在一个单独页面上。

HTML 代码:

CSS 代码:

JavaScript 代码:

我们的JS脚本唯一需要做的就是把页面内所有的<noscript>元素的display属性设置为none。noscript元素从页面上隐藏了,没有BUG了。很简单,不是吗?

收藏 评论

关于作者:酸斋笑我

我不会修电脑。 (新浪微博:@酸斋笑我) 个人主页 · 我的文章

相关文章

可能感兴趣的话题



直接登录
跳到底部
返回顶部