6 に答える 6

9

HTML5 ではブロック要素を insize 要素に入れることができます<a>http://dev.w3.org/html5/markup/a.html#a-changesを参照してください
。これは HTML5 の新機能です。他のバージョンの HTML では、違法です。

更新(HTML5をよりよく理解したときに後で追加)

これは、<a>のコンテンツ モデルがインラインから透過に変更されたためです。つまり、 の中に入れることができるものは、の親<a>に入れることができるものと同じになりました。<a>ここでの質問に対する実際の答えは、「場合による」です。
例えば、

<div><a><ul><li></ul></a></div>

完全に有効な HTML5 ですが、

<span><a><ul><li></ul></a></span>

ではありません (spanはインライン要素であるため)。
お役に立てれば!

于 2012-06-08T09:19:13.323 に答える
5

<ul>はブロック要素タグであり<a>、インライン要素タグです。ブロック要素タグは、インライン要素タグ内に入れるべきではなく、その逆 (または他のインライン要素タグ内のインライン要素タグ) に限ってください...

ここから始めて、Google で詳細を確認してください: http://line25.com/articles/10-html-tag-crimes-you-really-shouldnt-commit

于 2012-06-08T09:13:51.433 に答える
1

一般に、インライン要素は他のインライン要素のみを子として許可します。HTML 4.01 Doctype Definitionを確認すると、これが実際にタグの場合であることがわかり<a>ます (342 行目)。あなたの IDE は、<ul>タグ内の<a>タグを無効としてマークするのは正しいですが、ほとんどのブラウザーは依然として「正しいことを行います」。

于 2012-06-08T09:13:22.707 に答える
1

あなたはこのようなことをしようとしています:

<a href="google.com">
    <ul>
        <li>Google.com</li>
        <li>Gmail.com</li>
    </ul>
</a>​

HTML ルールに従って構文的に正しいのは、HTML が表示errorされないためbug、dreamweaver のように表示されるからです。

次のようなものを播種します。

- Google.com
- Gmail.com

ただし、両方のリンクの場所は同じgoogle.comです。

私はあなたがこのようなことをしようとしていると思いました:

<ul>
    <li><a href="google.com">Google.com</a></li>
    <li><a href="stackoverflow.com">stackoverflow.com</a></li>
</ul>

次のようにレンダリングされます。

そして、それはバグなしです..

于 2012-06-08T09:22:35.200 に答える
0

リンクをクリックするとアンカーの上部にリダイレクトされるため、アンカー リンク内にコードを配置する必要はありません。<a>

于 2012-06-08T09:07:23.450 に答える
0

http://validator.w3.orgによると、これは HTML5 で有効です

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>title</title>
  </head>
  <body>
     <a href="#"><ul><li>foo</li></ul></a>
  </body>
</html>

ただし、HTML4.1 にはありません (厳密)

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
  "http://www.w3.org/TR/html4/strict.dtd">
  <html lang="en">
    <head>
      <title>title</title>
    </head>
    <body>
      <p>
        <a href="#"><ul><li>foo</li></ul></a>
      </p>
   </body>
  </html>

しかし、これを行うのは(私にとって)意味的に正しくないと感じます:-)

仕様を見ると、フロー コンテンツが期待される場所でa<ul> が許可され、 フロー コンテンツとして分類されます。<a>

于 2012-06-08T09:18:50.040 に答える