1

我在 IE8 中遇到了一个奇怪的问题,当我试图在我的屏幕顶部获得一个固定的 div 时,它会暂时隐藏所有其他内容。

现在实际发生的是固定的 div 出现在我的内容正下方。代码片段:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
   <head>...</head>
   <body>
      <table width="50%">...</table>
      <div class="cadre2" style="width: 50%">...</div>

      <div style="z-index: 9999; position: fixed; background-color: #ff0000; width: 100%; height: 100%; top: 0px; right: 0px; left: 0px; bottom: 0px;">This should be on top!</div>
   </body>
</html>

但在 Internet Explorer 8 中的结果是这样的:

____________________
|                  |
|                  |
|     CONTENT      |
|                  |
|__________________|
|                  |
| THIS SHOULD BE   |
|       ON         |
|      TOP!        |
|                  |
|__________________|

毫不奇怪,这在 FireFox 中工作得非常好。

有谁知道是什么导致 IE8 出错?是否可以将任何 CSS 属性设置为前面的任何 HTML?尽管我非常怀疑这一点,因为固定 div 没有嵌套在除主体之外的任何其他元素中。

谢谢你的帮助!

4

1 回答 1

1

您需要将 doctype 定义更改为

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

您可以在http://webdesign.about.com/cs/doctype/a/aaquirksmode.htm找到一些解释

于 2013-01-07T08:29:19.933 回答