荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: ycool (我要努力呀), 信区: Microsoft
标  题: IE5.5的BUG
发信站: BBS 荔园晨风站 (Thu Dec 28 11:27:44 2000), 转信

  前不久微软发布了它的IE 5.5正式版,像我这样的软件升级狂当
然是迫不及待地赶着装了一个来尝鲜,反正是不要钱嘛。OK,终于升
级完毕。让我马上试试,用这双升了级的眼睛去看看网络世界到底和
以前有什么不同。咦,真的有不同耶,怎么以前熟悉的网页有点不对
劲:“运行期错误”、“类未注册”之类的信息不断跳出来;一些应
该出现的图片不能显示……这到底是怎么一回事啊?
  经过我和我的好朋友一番摸索之后总算明白了原因。让我奇怪的
是,这次微软一反以往的作风,IE 5.5没有完全向下兼容。

  也就是说以前用IE 5.0可以正常浏览的网页现在用IE 5.5就有可
能不能再正常浏览了。这是因为这个版本的IE对HTML的解释采用了一
些新的标准。举一个我碰到的例子:在IE 5.0中可以使用空层来达到
遮罩效果。所谓空层就是中间什么也没有的一对<div>标签。把这样
一个空层覆盖在网页的最上边,就可以覆盖住下边的超链接之类的你
不想别人太早接触的东西,然后在适当的时机和条件下把这个层的visibility
属性设为hidden。这样下边的超链接等就又可以使用了。

  你可以自己做一些这样的层分别在IE 5.5和IE 5.0中测试。你会
发现在IE 5.5中空层好像就真的像它的名字一样,变得不存在了。难
道它真的不存在了吗?由于我没有拿到IE 5.5的技术资料,我只能推
测:空层的确是变空了,这句话可以这么理解。在IE 5.0中空层就像
是块玻璃,虽然透明但是不可穿透,而在IE 5.5中,空层只是一个框,
中间是可以穿透的。像这样一个东西当然是什么也遮不住了。也可能
是层的大小是根据<div>标签中间的内容自动调整大小的。像空层这
种东西,由于中间什么也没有,那就会缩小成一个点,什么也遮不住
了。

  推测原因就是为了寻求一个解决方案,来看看我们的摸索经过吧
:一开始我们猜测空层是不支持透明背景了,所以我们为它添加了背
景颜色。之后,原先的作用又恢复了。看来给空层添加背景颜色可以
解决这个问题。可是且慢,你也许已经感觉到只是简单的添加背景颜
色好像还是不够好,一块块的颜色显得很不和谐,而且还遮住下边的
图片,把整个页面搞得面目全非。不行!再试试其它的:既要让它不
是空的,又得让它透明,那就只有在标签中插入空格了,也就是在一
对<div>插入几个“&nbsp;”来达到目的,成功了。可是还是有点不
对劲,比较小的层使用这种方法是没有问题了,可是比较大的层又有
问题了,那要插入多少个“&nbsp;”啊,而且要想精确的控制层的
大小也因此会变得不容易。呵呵,还好我另有妙计:比如解决起遮罩
作用的空层吧,在IE 5.0中是一开始就在页面上覆盖一个空层来遮住
下边的东西,然后在适当的条件下把这个层变成隐藏的,这样下边的
东西就变得可用了。现在IE 5.5中既然不能使用空层来起覆盖的效果,
那我们就用一个两全其美的办法,将想要隐藏的网页元素一起放到一
个层中,通过显示或者隐藏一个层来达到目的。

  由于没有拿到关于IE 5.5所支持的新标准的资料,我无法一一测
出IE 5.5到底对哪些标签的解释和以往不同。但我可以确信,对层的
解释已经和以往不同了。以前的某些属性已经不能像以前那样在IE 5.5
中正常显示,同时我猜测在舍弃了对这些属性的支持后,IE 5.5一定
会添加一些新的属性。可惜的是现在我还不知道到底哪些属性不再支
持,到底添加了哪些属性。姑且不论这种改动是好是坏,我是为了消
除IE 5.5浏览网页时不能正常显示的问题忙得不亦乐乎,这就是我们
这些负责后台的工作人员的苦处了。每次出现一个什么新的标准我们
就可能会痛苦那么几天来适应,不过想到大家能够安心享受到我们的
工作成果,痛苦也就稍微好受些了。

  后记:在发布IE 5.5以后的几天,我已经看到ChinaAsp和一些其
他站点的页面出现了和IE 5.5不兼容的问题。不过他们已经很快解决
了这些问题。看来IE 5.5的推出让不少人有得忙了,这也是没有办法
的事,谁叫游戏规则是微软老大制订的呢。


--
※ 来源:·BBS 荔园晨风站 bbs.szu.edu.cn·[FROM: 192.168.0.219]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店