2012-01-13 8 views
1

純粋なJSを使用して、上位レベルから継承した要素の表示プロパティを決定する必要があります。継承するstyle.displayプロパティ

要素はフィールドセットにネストされた入力ですが、親フィールドセットの表示プロパティはnoneに設定されている可能性があります。その場合、その条件を検出する必要があります。

私はelement.style.displayプロパティを取得しようとしましたが、継承されているので、これは私に必要なものを与えてくれませんか?

答えて

0

CSSルールでは、displayプロパティは継承されません(ただし、明示的に値をinheritに設定することはできません)。

要素の文字数がdisplay: noneの場合は、値がdisplayであればその子孫は表示されません。要素がこのような状況にあるかどうかを検出するには、ドキュメントツリーを上向きに移動し、すべての祖先の計算されたスタイルをチェックする必要があります(IE 8までは複雑ですが、IEはwindow.getComputedStyleをサポートしません)。

これは実行可能ですが、より簡単な方法はないと確信していますか?フィールドが表示されない要素の内部にあるかどうかを知る必要があるのはなぜですか(設定によってはおそらく)。

+0

IEは[currentStyle'](http://www.quirksmode.org/dom/getstyles.html)を実装しています – user123444555621

関連する問題