2013-09-08 15 views
8

親スタイルをオーバーライドする方法を理解していますが、この例は工夫されていますが、親がnoに設定されていても子スパンを表示する方法があります表示?親のCSS表示プロパティをオーバーライドする

<span style="display:none"> 
<span style="display:block;">Test</span> 
</span> 
+0

これは常識です!なぜ誰もそれをしたいと思うだろう!ボックスが閉じられてロックされている間に、ボックスの中に何が入っているかを人々に見せてくれるようなものです! – evilReiko

+0

車に乗っている人を見せているように見えるのは、既に該当する仕様を引用して –

答えて

10

短い答え:いいえ。

長い答え:親が非表示の場合、子供の表示を無効にする方法はありません。 JavaScriptを使用して、親から子スパンを削除し、それを表示スタイルを適用できる本文に配置することができます。表示、不透明度、可視性などのようなものは、それらが適用される要素の子に影響を与え、効果は完全に反対することはできませんが、不透明のようなもののために追加することができます。

9

いいえ、内部要素にdisplay: noneの効果を無効にすることはできません。その理由は、CSSの仕様は明示的にdisplay propertyの値noneの説明では、と言うことです:

この値は、フォーマット構造(IEで表示されないようにする要素を起こし、映像メディアの要素がまったくボックスを生成しないとレイアウトには影響しません)。下位要素はボックスも生成しません。要素とその内容は書式設定構造から完全に削除されます。この動作は、子孫の 'display'プロパティを設定することでオーバーライドできません。

+0

+1となっていることです! – hopper

関連する問題