0

w3c-validatorを使用してコードを検証しようとしています
エンコーディング:utf-8
Doctype:XHTML1.0フレームセット

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">  
<html xmlns="http://www.w3.org/1999/xhtml">  
  <head>  
    <title>Openfire Archived IM content Search</title>  
    <meta http-equiv="content-type" content="text/html; charset=UTF-8" />  
  </head>  
  <body>  
    <p>  
        <!--The following javascript function re-directis the user to the same page-->
        <script type="text/javascript">  
        function startover(){  
            window.location="http://localhost/openfireIMsearch/index.php"  
        }  
        </script>

<!--html form for start-over button. The javascript function startover() is called when the user clicks this button-->
        <form method="get" action= "index.php" name = "re-login">
            <input type = "button" value ="Start Over" onclick = "startover()" />
            <input type = "hidden" name = "re-login-hidden" value ="re-login-on" />
        </form>  
    </p>
  </body>
</html>

次のエラーが発生しましたが、手がかりがありません。

7行目、6列目:ドキュメントタイプはここで要素「body」を許可していません✉上記の名前の要素は、許可されていないコンテキストで見つかりました。これは、誤ってネストされた要素(「head」の内側ではなく、「body」セクションの「style」要素など)または重複する2つの要素(許可されていない)があることを意味します。このエラーの一般的な原因の1つは、HTMLドキュメントでのXHTML構文の使用です。暗黙的に閉じられた要素のHTMLの規則により、このエラーはカスケード効果を作成する可能性があります。たとえば、HTMLドキュメントの「head」セクションで「meta」と「link」にXHTMLの「自己閉鎖」タグを使用すると、パーサーが「head」セクションの終わりと「body」の始まりを推測する場合があります。 "セクション(ここで"

エラーメッセージは、1つの理由がメタタグの使用である可能性があることを示しているようです。ただし、Doctypeは、ドキュメントがHTMLではなくXHTMLであることを明確に示しています。私はここで途方に暮れています。誰かが光を当てることができますか?ありがとう!

4

1 に答える 1

3

あなたのDoctypeは、それがフレームセットであると私に言っているようです。これにより、bodyタグが違法になり、代わりにフレームセットが必要になります。フレームを作ってからしばらく経ちますが、覚えていないかもしれません。

そして、それが明らかでない場合、解決策は正しいDoctypeを見つけることです。何かのようなもの:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

http://www.w3.org/QA/2002/04/valid-dtd-list.htmlには、選択できるリストがあるようです(そして、ここから上記をコピーしました)。

于 2012-08-08T16:19:13.220 に答える