2

IE7 でのみ、サブメニューがページのコンテンツの下に表示されます。bgframe プラグインを使用しています。

ここに私のコード: $("ul.sf-menu").superfish({ speed: 'fast', autoArrows: false // 矢印マークアップの生成を無効にする }).find('ul').bgIframe({opacity :間違い});

あなたはなにか考えはありますか?

どうもありがとうございました。さようならZ

4

5 に答える 5

7

この小さなコードのチャンクは役に立つと思うかもしれません.Z-オーダーで深いブードゥーを行います. 私が作成したわけではありませんが、数え切れないほどの時間を節約できました。

IE7 に関する多くの問題を修正する 1 つの方法は、ページ上の要素のデフォルトの z-index スタック順を動的に逆にすることです。これにより、HTML ソースの上位にある要素ほど、ページの z-index 順序も高くなり、IE スタックの問題のほとんどが解決されます。jQuery (最高の Javascript ライブラリ) を使用している場合は、ここで簡単に修正できます...

$(function() {
    var zIndexNumber = 1000;
    $('div').each(function() {
        $(this).css('zIndex', zIndexNumber);
        zIndexNumber -= 10;
    });
});

ここですべてを見つけることができます...

于 2010-02-10T09:43:23.490 に答える
2

これは確かに CSS の問題であり、修正するのは非常に面倒です。

ほとんどの場合、コンテナ要素の 1 つに position:relative または position:absolute ルールがあるか、位置をいじる別の JS プラグイン (jquery.corner など) を使用しています。そのようなものを探し回ってください。

于 2009-12-11T17:47:32.443 に答える
1

親コンテナを次z-index:1.sf-menuように設定しますz-index:100

これにより、レイヤーが設定され、Web サイトのコンテンツ上にメニューがポップアップ表示されます。

于 2013-11-26T00:12:18.450 に答える
1

上記の z-index の修正により、自分の頭皮をはぎ取ることがなくなりました。私はそれを IE7 固有の条件付きコメントに入れました。

于 2010-10-05T19:56:23.277 に答える
0

これは css の問題のように思えますが、おそらく superfish の実装とは関係ありません。IE Developer Toolbar を使用してメニューを検査し、どのような組み合わせが原因でメニューが表示されているかを確認してください。

于 2009-12-11T17:41:07.260 に答える