好的,这一次非常简单的问题(虽然答案似乎难以捉摸,因为我无法在网上任何地方找到它。)
它与经典有关:在IE中格式化麻烦。我想它可能是IE无法与Box模型很好地工作的一部分,虽然我找不到IE将修改DIV边框厚度的原因。此外,正如我将进一步解释的那样,还有另一个变量:DIV的内容,它决定了边框是否在IE中正确显示(无论其他地方都能正确显示)。
首先,它是一个简单的DIV,它的CSS如下:
#menu {
width:1000px;
border-top:#0072FF solid 10px;
border-bottom:#FF0078 solid 20px
}
然而,在IE中,顶部和底部边框的厚度大约是其两倍。
这是它在一个和另一个浏览器中的外观(它只是DIV的一部分,而不是整个1000px的部分):
里面有什么?它有一个嵌入式Flash菜单。
我已从代码中删除了其他所有内容,并测试了其Flash内容存在问题的DIV。结果:问题仍然存在。
但是,如果我取出嵌入式Flash,则不会再现该问题。例如,如果我插入文本内容,则问题再次未被复制。显然,这与Flash内容和/或嵌入方式有关。 (再一次,这只发生在IE中......非常惊讶!)
我已经尝试过以几种不同的方式嵌入Flash(尽管我之前从未遇到过麻烦)。这是我正在使用的当前方式,我从一个网站推荐它为“避免IE问题的最佳方法”:
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="1000" height="30" id="menu" align="middle">
<param name="movie" value="./swf/menu.swf"/>
<!--[if !IE]>-->
<object type="application/x-shockwave-flash" data="./swf/menu.swf" width="1000" height="30">
<param name="movie" value="./swf/menu.swf"/>
<!--<![endif]-->
<a href="http://www.adobe.com/go/getflash"> <img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player"/> </a>
<!--[if !IE]>-->
</object>
<!--<![endif]-->
</object>
我甚至试图查看它是否是AC_RunActiveContent.js问题,但事实并非如此。
我尝试了几次黑客攻击和/或解决方法,但无济于事。 (这些仍然适用于IE吗?当我偶然发现类似的问题时,我发现* html
不再适用于我;格式化的问题仍然存在。)我宁愿避免使用变通方法,在这种情况下,至少,似乎CSS解决方法不会有任何好处(当然,除非我需要格式化我的<object>
标签 - 尽管它将是第一个)。
无论如何,任何见解都会非常感激!谢谢!
答案 0 :(得分:1)
我发现你的对象也有id="menu"
。这就是你说div
时的意思吗?如果没有,我认为IE正在将#menu
样式应用于<object>
和 <div>
,而其他浏览器仅将<div>
视为{{{} 1}}。