web-dev-qa-db-ja.com

HTML:<a>タグと<p>タグの正しい順序は何ですか?

次のうち、どちらが標準で正しいか

<!-- Do the links surround the target link object -->
<a href=''><p>Link Description</p></a>
<!-- or does the object type encapsulate the link-->
<p><a href=''>Link Description</a></p>

私はそれらが同じように機能することを知っていますが、それはベストプラクティス/標準の質問です。これはul/olにも適用できます。

内部の<a>タグを支持する唯一の理由は、次のような状況にあります。

<p>This is a longer sentence with a <a href=''>short link here</a></p>

ありがとう!

26
j_syk

最初の例はHTML5でのみ許可されています。

2番目の例は、HTML/XHMTLのすべてのバージョンで許可されています。

47
edeverett

ブロック要素をインライン要素でラップすることはできません。あなたはそのようにこれをしなければなりません:

<p><a href=''>Link Description</a></p>

これはW3C標準です。チェック this

15
ChristianB

HTML 5以降、アンカータグ(<a></a>)は、段落を含め、ほとんど何でもラップできます。したがって、どちらの例も有効ですが、私は段落内にアンカーを置く傾向があります。

5
Karl Nicoll

アンカー(a)はブロック要素内にある必要があります。そう

<p><a>...</a></p>
2

2つ目は、<p><a>の属性を継承しておらず、元のフォーマットを維持していることです。

2
mrkva

<a>などのインライン要素は、多くの場合<p>などのブロックレベル要素内に含まれています。ブロック要素は、データを表示するために必要な構造を提供します。

2
George Cummins

私はいつも<p>タグは、テキストの量が多い場合を除いて内部にあります。

1
Mertis