117

spanネストしてaタグ付けしたい。するべきか

  1. <span>中に入れる<a>
  2. <a>中に入れる<span>
  3. それは問題ではありません ?
4

10 に答える 10

113

3 - 関係ありません。

しかし、タグのコンテンツの一部のみの場合、つまり<span>内側のみを使用する傾向があります。<a>

<a href="#">some <span class="red">text</span></a>

それよりも:

<a href="#"><span class="red">some text</span></a>

明らかに次のようになります。

<a href="#" class="red">some text</a>
于 2009-11-19T13:25:46.680 に答える
34

(少なくとも HTML 4.01 および XHTML 1.0 標準では) a 内または a 内のいずれかをネストすることは完全に<span>有効です。<a><a><span>

それを証明するために、 W3C MarkUp Validation Serviceでいつでも確認できます。

私は検証しようとしました:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
  <html>
    <head>
      <title>Title</title>
    </head>
    <body>
       <p>
         <a href="http://www.google.com/"><span>Google</span></a>
       </p>
    </body>
  </html>

また、上記と同じですが、<a>内部では<span>

すなわち

<span><a href="http://www.google.com">Google</a></span>

HTML 4.01 と XHTML 1.0 の両方の doctype で、両方とも検証に合格しました!

注意すべき唯一のことは、正しい順序でタグを閉じるようにすることです。そのため、 で開始してから を開始する場合は<span><a>タグを閉じてから を閉じてください<a><span>逆の場合も同様です。

于 2009-11-19T13:32:56.980 に答える
20

それは問題ではありません - それらは両方とも互いの内部で許可されています.

于 2009-11-19T13:21:19.247 に答える
18

それは、何をマークアップするかによって異なります。

  • スパン内にリンクが必要な場合は、中に入れ<a>ます<span>
  • <span>リンク内の何かをマークアップしたい場合は、<a>
于 2009-11-19T13:22:06.893 に答える
16

SPAN は一般的なインラインコンテナーです。どちらもインライン要素であるため、 anaが内部にあるspanspan内部にあるかは問題ではありません。a論理的に正しいと思われることは何でも自由に行ってください。

于 2009-11-20T14:14:41.353 に答える
2

それは、スパンが何のためにあるかによって異なります。リンクであるという事実ではなく、リンクのテキストを参照している場合は、#1 を選択します。スパンがリンク全体を指す場合は、#2 を選択します。スパンが何を表しているのかを説明しない限り、それ以上の答えはありません。どちらもインライン要素であり、構文的に任意の順序でネストできます。

于 2009-11-19T13:22:40.820 に答える
2

たとえば、並べ替えのアイコン フォントを使用している場合は問題になる可能性があります。私は今これを持っていました:

<span class="fa fa-print fa-3x"><a href="some_link"></a></span>

通常、A の内側にスパンを配置しますが、それを交換するまでスタイリングは有効になりませんでした。

于 2015-01-23T09:22:44.507 に答える
1

個人的には、Web 開発者として、あるセクションに背景を適用するなど、リンク テキストのセクションを強調表示しようとする場合にのみ、アンカー タグ内にスパンを配置します。

于 2011-07-14T09:10:43.183 に答える
0

どちらも機能しますが、個人的にはオプション 2 を好むので、スパンはリンクの「周り」にあります。

于 2009-11-19T13:22:53.520 に答える
0

意味的には、単一の要素のコンテナである方が理にかなっていると思います。それらをネストする必要がある場合は、複数の要素が外側の要素の中にあることを示唆しています。

于 2009-11-19T13:49:57.850 に答える