1

Internet Explorer 9.0.8では、マウス オーバー時にメニューのサイズが大きくなります。その理由は、要素dividerがプロパティを使用していたためであることがわかりましたoverflow:hidden

マウスが上にあるときに要素に影響を与えるのはなぜですか?

これがコードのフィドルです。最初の CSS スタイルのどこに問題があるかを指摘しました。 http://jsfiddle.net/EF9Eg/4/

これは問題のあるスタイルです:

.floatingMenu li.divider{
    height: 1px;
    margin: 9px 1px;
    overflow:hidden;  /*PROBLEM INTERNET EXPLORER*/
    background-color: #E5E5E5;
    border-bottom: 1px solid #FFF;
}

すべてを取り除くと、overflow:hidden;うまくいきます。

4

2 に答える 2

1

IE の 100% 幅の部分と、そのサイズを定義している div に関する別の解釈に基づいているように見えることが起こっています。

セットまたは最大幅を持たない div または ul の 100% 幅は、ネストされている最大の div の幅であると解釈される可能性があり、これが発生しているように見えます。100% 幅を削除するか、セットまたは最大幅を ul に適用すると、その階層幅に制限されます。

これは、UL に適用される絶対配置の要因の 1 つである可能性もあります。これは、それ自体よりも高い相対的に配置された div の幅を無視する可能性があるためです。

これで何が起こっているのかがさらに説明できると思います。

于 2013-05-16T17:38:51.460 に答える
0

.floatingMenu li から width:100% を削除すると、問題はなくなります

于 2013-05-16T16:08:02.700 に答える