100
4

4 に答える 4

152

Web 標準によれば、ブロック要素をインライン要素に入れることは許可されていません。

h1ブロック要素でaあり、インライン要素であるため、正しい方法は次のとおりです。

<h1><a href="#">This is a title</a></h1>

詳細については、次のリンクを参照してください: w3 ビジュアル フォーマット モデル

divただし、HTML5 ではブロック レベルの要素 ( 、 、pなどh*) をアンカー タグでラップすることが有効であるという例外があります。アンカー以外のインライン要素でブロック レベルの要素をラップすることは、標準に反します。

于 2009-07-15T00:26:37.673 に答える
49

HTML5はこの主題を更新します:別の質問で述べられているように、ブロックレベルの要素をAでラップすることはOKです:https ://stackoverflow.com/a/9782054/674965そしてここ:http ://davidwalsh.name/html5-要素-リンク

于 2012-04-12T10:23:58.027 に答える
3

a > h1テキストの選択が困難になります

テキスト選択の問題

どちらもHTML5で完全に有効なので、使用することをお勧めしますh1 > a

于 2020-06-09T20:46:06.403 に答える
2

私が理解している限り、HTML5ではブロックレベルの要素をリンクタグでラップすることができます。ただし、古いブラウザではバグが表示される場合があります。Firefox 3.6.18でこれに遭遇し、コードにmoz-rs-heading=""が挿入されました。したがって、私のスタイルは壊れました。回避策が必要な場合は、リンクタグをdivでラップできます。以下は、追加のコードが機能する理由のより良い説明を提供しますhttp://oli.jp/2009/html5-block-level-links/

于 2012-12-13T05:19:56.650 に答える