24

重複の可能性:
どちらがより正しいか: <h1><a>..</a></h1> または <a><h1>..</h1></a>
意味的に、どちらがより正しいか: a in h2、またはaのh2?

HTMLに関する簡単な質問です。ヘッダー、段落、または別の HTML 要素にリンクを配置する正しい/最も望ましい方法は何ですか?

こちらです:

<h2><a href="">Some Title</a></h2>

またはこの方法:

<a href=""><h2>Some Title</h2></a>

4

6 に答える 6

29

ベターは

<h2><a href="">Some Title</a></h2>

hは表示ブロックを持つ要素でありblock、要素に含めることはお勧めできませんa

于 2012-06-21T20:04:57.973 に答える
5

注意: HTML4 のリンク内にヘッダーを配置することはできません。

HTML5 では、目的の効果とセマンティックな意味に依存します。ヘッダー全体をリンク内に配置すると、クリック可能な領域が幅全体に広がりますが、リンクをヘッダー内に配置すると、テキストのみがクリック可能になります。以前に両方のバージョンを使用しましたが、ヘッダーをどこに置くかによって完全に異なります。

于 2012-06-21T20:05:57.287 に答える
3

私は2番目のものを好みます:

<a href=""><h2>Some Title</h2></a>

たとえば、次のようなことをしたい場合は、より詳細に制御できるためです。

<a href=""><h2>Some Title</h2> <h1>biggest</h1></a>
于 2012-06-21T20:03:55.523 に答える
3

どちらも問題なく動作します。

必要に応じて、http: //validator.w3.org/で自分で確認できます。

于 2012-06-21T20:06:02.460 に答える
2

技術的に言えば、<a>はインライン要素であり<h2>、ブロックレベルの要素であるため、次のようになります。

<h2><a href="">Some Title</a></h2>

正しいネストです。

とは言うものの、ブラウザは通常、そのような誤ったネストを無視し、希望どおりにそれを実行できるようにします。

私は、ブラウザが標準準拠モードまたはクァークズモードでページを実行することを選択することになると、運命を誘惑するのが好きではないので、正しいネストを選択します。

于 2012-06-21T20:09:06.957 に答える
0
<h1><a href="#">text here</a></h1>

HTMLはインライン要素()(src)内のブロック要素()を許可しないため、正しいです。2番目の例は検証に失敗します。

一般に、ブロックレベルの要素には、インライン要素やその他のブロックレベルの要素が含まれる場合があります。一般に、インライン要素にはデータと他のインライン要素のみが含まれる場合があります。この構造上の違いには、ブロック要素がインライン要素よりも「大きな」構造を作成するという考え方が内在しています。

別の質問からこれをコピーしました...

于 2012-06-21T20:08:28.477 に答える