a:link around div - div 内のスタイリング
この HTML を考えると:
<a id="foo" href="foobar">
<div id="bar">
<h2 id="baz">Foo</h2>
</div>
</a>
そして、この CSS (構造を表示するために追加された背景色):
a {
display: block;
padding: 20px;
background-color: rgb(240,240,240);
}
#bar {
width: 200px;
height: 100px;
background-color: rgb(220,220,220);
}
#baz {
padding: 20px;
text-decoration: none;
}
Chrome では、一致した CSS ルールが含まtext-decoration: none;
れていると表示されますが、テキストには実際に下線が引かれています。
(ソース: pangram.net )
同様に、Firebug を使用すると、Firefox はnull
計算されたtextDecoration
スタイルを返します。
(ソース: pangram.net )
MDN によると、それtext-decoration
はすべての要素に適用されます。
text-decoration
プロパティをリンクに適用するだけの簡単な回避策があることはa
わかっていますが、これは私が期待した動作ではありません。この(明らかな)不一致を説明できる人はいますか?
編集:答えはここにあると思います:行の装飾: 下線、上線、および取り消し線
インライン フォーマット コンテキストを確立するブロック コンテナーで指定または伝達されると、装飾は、ブロック コンテナーのすべてのインフロー インライン レベルの子をラップする匿名のインライン ボックスに伝達されます。
しかし、私はまだ何が起こっているのか完全には理解していません。