0

id="y" の別の div 内に id="x" の div を持つ Web ページを作成しました。内側の div には display:none があります。外側の div がホバーされるとすぐに、内側の div の表示が「インライン」に設定されます。問題は、内側の div が表示され、ホバーしようとするとすぐに、表示が再び「なし」に設定されているため、div が消えることです。この問題は IE にのみ存在し、FF や Chrome には存在しません。Firefox または chrome では、外側の div をホバーすることができ、内側の div が表示されたらホバーすることもできます。

HTML コード:

<divid="y">Blah Blah
<div id="x">Random Text</div>
</div>

CSS コード:

div#y:hover div{display:inline;} 
div#x{display:none;}
4

4 に答える 4

0

これが機能するかどうかはわかりませんが、別の外側の div を追加してみてください:

<div id="y">Blah Blah
    <div id"anotherDiv"><div id="x">Random Text</div></div>
</div>

ブロック表示あり

div#anotherDiv {display: block; }

http://jsfiddle.net/9zBbP/

于 2013-04-14T09:17:09.697 に答える
0

問題は、マウスが divx の上にあるときに別のオブジェクトをホバリングしていることです。これを修正するには、divx にもカーソルを合わせて、表示をインラインに変更します。これもうまくいきます。

div#x:hover div{display:inline;}

http://jsfiddle.net/9zBbP/6/

また、CSS で y:hover と x:hover を同じプロパティに組み合わせることができ、HTML で 2 つの div しか使用していないため、HTML と CSS のサイズを小さくすることもできます。

于 2013-04-14T09:20:36.137 に答える
0

IE で動作させるには、適切な doctype を配置するだけです。

<!DOCTYPE html>

次のようなマークアップが必要です。想定<divid="y" >はタイプミスです。

<div id="y">Blah Blah
   <div id="x">Random Text</div>
</div>
于 2013-04-14T09:25:58.090 に答える