JavaScript スタイル属性の不一致
Q: 表示が定義されているときに element.style が一貫して空の値を返すのはなぜですかCSS では、要素がスタイルを継承している場合でも?
A: element.style プロパティは、HTML ドキュメント内の要素に直接適用されるインライン スタイルを取得します。 CSS で定義されたスタイルはインラインとみなされないため、element.style には反映されません。
計算されたスタイル:
JavaScript は window.getComputedStyle() を提供します。要素に適用される実際の効果的なスタイルを取得する関数。この関数は要素を入力として受け取り、すべての CSS プロパティの計算値を含む ComputedStyle オブジェクトを返します。
例:
次のコードを考えてみましょう:
<div>
#test { display: block; }
document.getElementById('test').style.display にアクセスすると空の文字列が返されますが、window.getComputedStyle(document.getElementById('test')).display は正しく「block」を返します。
結論:
要素に適用された CSS スタイルを取得するには、window.getComputedStyle() を使用する必要があります。 element.style を使用すると、インライン スタイルのみが取得されます。通常、外部 CSS を持つ要素には設定されません。
以上がCSS で定義されたスタイルに対して `element.style` が空の値を返すのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。