Internet Explorer 10忽略CSS'溢出:自动'样式

时间:2012-07-27 00:49:21

标签: javascript jquery html css internet-explorer

我在IE10上遇到了这个奇怪的问题。我有一个表,我在其中一个单元格中有一个UI小部件(jqTree)。 现在,这个树视图可以填充大量数据,所以我想修复它在屏幕上占用的大小。我还需要让用户滚动到树视图的任何部分。这在Chrome上很有用,但在IE 10上完全没有。

    <td style="vertical-align:top">
        <div class="HiddenInput" style="visibility:hidden">
            <div style="overflow:auto; width:350px; height:750px; border-style:solid">
                <div id="TreeView"></div>
            </div>
        </div>
    </td>

最外层的div只是为了隐藏树视图,直到我收到数据。在IE10中,当我填充树视图时,如果它完全忽略了div上方设置的边界,就好像它不在那里一样,即使div的边框清晰可见。

我在某处读过IE需要DOCTYPE标签,但这并没有解决这个问题。

2 个答案:

答案 0 :(得分:1)

所以我明白了。 IE10默认为在IE7标准模式下呈现我的页面。迁移到IE8 / 9/10解决了这个问题。

因此,如果您想确保您的网页在最新版本的IE(或特定版本)中呈现,请尝试使用:

<meta http-equiv="X-UA-Compatible" content="IE=edge" >

此处有关此元标记的更多详细信息:

http://www.nczonline.net/blog/2010/01/19/internet-explorer-8-document-and-browser-modes/

答案 1 :(得分:0)

试试这个:

<td style="vertical-align:top">
    <div class="HiddenInput" style="display:none">
        <div style="overflow:auto; width:350px; height:750px; border-style:solid">
            <div id="TreeView"></div>
        </div>
    </div>
</td>

并在树视图填满后,更改显示属性:

  <div class="HiddenInput" style="display:block;">