1

この HTML のスニペットでは、Firefox と Chrome で表示されたときに、最上位の Google リンクがその下のすべての要素に含まれています。

 <div>
    <a href="http://www.google.com/">
        <div>
            <div>                     
                <div>
                    <div>
                        <a>a tag</a>
                    </div>
                    <img />        
                    <h3>a title</h3>
                    <p>a description</p>
                    <div>a detail</div>
                </div>
            </div>
        </div>
    </a>
</div>

ここに画像の説明を入力

この解析の問題の原因は何ですか?どうすれば修正できますか?

4

1 に答える 1

3

次のドキュメントをW3C Validatorにドロップしてみてください。

<!DOCTYPE html>
<html>
    <head>
        <title>Parse error?</title>
    </head>
    <body>
        <div class="g23">
            <a href="http://www.google.com/">
                <div class="article-bg">
                    <div class="splash-border-right">                     
                        <div class="splash-content-margin">
                            <div>
                                <a href="http://www.google.com/">a tag</a>
                            </div>
                            <img src="http://www.google.com/image.jpg" />        
                            <h3 class="splash">a title</h3>
                            <p>a description.</p>
                            <div class="read-time">a min</div>
                        </div>
                    </div>
                </div>
            </a>
        </div>
    </body>
</html>

このドキュメントは有効な HTML5 ではないことに注意してください。最初のエラー:

行 13、列 65: 開始タグが表示されますが、同じタイプの要素が既に開かれています。

つまり、aタグに他のタグを含めてはなりませんaコメントのAlohciによると、Chrome と Firefox の動作は、このシナリオの HTML5 仕様の採用機関アルゴリズムと一致しています。ファンキーですが、無効なコードを使用すると、ファンキーな結果が予想されます。

于 2013-09-06T22:46:28.110 に答える