CSS被IE8撞了一下腰(IE7兼容模式解决)

Internet Explorer 8 Beta 版出来之后,就在网上看到有关IE8兼容性不好之说。今天客户说之前转过来的项目在IE8菜单全部乱了,上去看到果然如此。

该网页现将是在IE8浏览器下浮动的DIV层全部向下列举出来,应该是嵌套ul,li,div,a后或者是ul,li的相对位置和绝对位置冲突而出现的问题,不管是什么原因造成的,总之就是这个网页完全乱了,而在IE7和IE6下面都是正常的。IE系列的浏览器真是够烦的,但愿希望IE9能够真正的支持WEB标准,不再独创一家。

然后就开始找解决方法。先在网页头部加上单独解析IE8的CSS链接:

<!–[if IE 8]>
<link rel=”stylesheet” type=”text/css” href=”ie8hacks.css” />

<![endif]–>

写上针对导航菜单里的UL,LI,A等标签,但就是没有一点改变的迹象。

之后继续修改但仍然无法修正。继续GOOGLE,尝试用X-UA-Compatible这个标签去解决。

<code><meta http-equiv=”X-UA-Compatible” content=”IE=EmulateIE7″ /></code>

X-UA-Compatible是针对ie8新加的一个设置,对于ie8之外的浏览器是不识别的,这个区别与content=”IE=7″在无论页面是否 包含<!DOCTYPE>指令,都像是使用了 Windows Internet Explorer 7的标准模式。

而content=”IE=EmulateIE7″模式遵循<!DOCTYPE>指令。对于多数网站来说,它是首选的兼容性模式。

但是一开始的时候我在HEAD区加上这段代码的时候仍然一样,后来再继续尝试的时候才知道什么原因,原来是需要将这段代码放在TITLE和STYLE的前面才能生效的。

至此,问题总算是得到了解决。万恶的IE!

Tags: , ,

Related Posts

Leave a Reply