以文本方式查看主题 - ╋艺 镇╋ (http://wdystv.com/bbs/index.asp) -- ┣◇网站建设&Web语言 (http://wdystv.com/bbs/list.asp?boardid=4) ---- ie8中 position:relative定义的层不能正常显示 (http://wdystv.com/bbs/dispbbs.asp?boardid=4&id=3176) |
-- 作者:admin -- 发布时间:2011/9/9 14:27:30 -- ie8中 position:relative定义的层不能正常显示 无意打开IETester在IE8下测试了一个页面,突然发现一个父级position:relative;子级position:absolute;的样式焦点轮播的时候在IE8下居然是错位的。仔细看了一下,发现IE8居然不认父级的相对定位,直接就是在屏幕上显示绝对定位。初步判断是IE8对JS的解释变化了。但是我之前在各个浏览器都测试过了,没问题。 本着学习的态度,我开始查看一些知名站点在IE8下的显示情况,当然过程是疑惑+漫无目的的。直接奉上我最后得到的结果吧。在HEAD里面多了一些代码。很疑惑,搜索一下,找到了微软的MSDN,在IE8的问题下面有一条“如何立即修复我的站点?”,看完了文章,恍然大悟,原来代码是强制将IE8以类似IE7的方式来呈现页面。 Code <meta http-equiv="X-UA-Compatible" c /> 原文: 快速短期修复措施 您维护的现有网页可以在 Windows Internet Explorer 7 中正常显示,但您希望通过极少的修改进行更新后,它能够在 Windows Internet Explorer 8 中正常显示。有两种方法。您可以在每个页面中添加兼容性模式 META 标记,强制 Windows Internet Explorer 8 以类似 Windows Internet Explorer 7 呈现页面的方式来呈现页面。如果您控制 Web 服务器,还可以将服务器配置为发送与每个网页的 META 标记等效的自定义 HTTP 响应标头,以使服务器自动添加兼容性。 如何修改每个页面 将以下 HTML META 标记放置到每个网页的 HEAD 元素中(在除 TITLE 或 META 外的标记之前): <meta http-equiv="X-UA-Compatible" c/> 通过以上方式修复您的网站后,将强制 Windows Internet Explorer 8 以类似 Windows Internet Explorer 7 呈现页面的方式来呈现页面。 如何将服务器配置为自动修改每个页面 若要在每个页面中自动添加等效于 HTML META 标记的兼容性,请将服务器配置为发送以下标头: X-UA-Compatible:IE=EmulateIE7 若要配置 Microsoft Internet Information Services (IIS) 7.0,请按以下方式配置 Web.config 文件: Code <?xml version="1.0" encoding="utf-8"?> <configuration> <system.webServer> <httpProtocol> <customHeaders> <clear /> <add name="X-UA-Compatible" value="IE=EmulateIE7" /> </customHeaders> </httpProtocol> </system.webServer> </configuration> http://spacexp.blog.163.com/blog/static/13000386201153011154463/ |