1

これは、HTMLバリデーターが次のエラーを表示しているコードです。

<input type="text" id="search" name="keywords" />
<input type="submit" value="Search" name="Submit" />

HTMLバリデーター(フルサイズのエラーのスクリーンショットは次のとおりです。

HTMLValidatorのエラーのスクリーンショット。

これは私が受け取っているエラーメッセージです:

上記の要素は、配置したコンテキストに表示することはできません。他の言及された要素は、そこで許可され、言及された要素を含むことができる唯一の要素です。これは、包含要素が必要であるか、前の要素を閉じるのを忘れている可能性があることを意味している可能性があります。

HTMLファイルの本文には、インライン要素とブロック要素の2種類の要素があります。このメッセージの考えられる原因の1つは、ブロックレベルの要素(「<p>」や「<table>」など)をインライン要素(「<a>」、「<span>」など)内に配置しようとしたことです。 "、または" <font> ")。

次のサンプルでは、​​<font>タグはインラインタグであり、他のインラインタグのみを含めることができます。ただし、<p>タグはブロックタグです。したがって、<p>タグを<font>タグに含めることはできません。

これは、それが由来するhtmlのブロックです:

<li>
    <form method="post" action="http://site.com/"  >
    <div class='hiddenFields'>
        <input type="hidden" name="ACT" value="19" />
        <input type="hidden" name="XID" value="90ee0994104d8ba87b6ef9b43e998fc8c89e0d9f" />
        <input type="hidden" name="RP" value="search/results" />
        <input type="hidden" name="NRP" value="" />
        <input type="hidden" name="RES" value="" />
        <input type="hidden" name="status" value="" />
        <input type="hidden" name="weblog" value="forms|alumni_distinguished|housing_faq|international_faq" />
        <input type="hidden" name="search_in" value="everywhere" />
        <input type="hidden" name="where" value="all" />
        <input type="hidden" name="site_id" value="1" />
    </div>

    <input type="text" id="search" name="keywords" /> <input type="submit" value="Search" name="Submit" />
    </form>
</li>
4

6 に答える 6

10

HTML4 / XHTML1 では、インライン コンテンツをform要素に直接配置することはできません。一方、HTML5 はその要件を取り除きます。

したがって、検証エラーが気になる場合 (もっと悪いことがあります...)、最後の 2 つの の前後にpor要素を追加します。divinput

于 2009-01-27T19:15:49.087 に答える
1

このバリデーターがどのHTMLバージョンに対して検証するかについては言及していません。XTHMLでない場合、入力タグは閉じられません。「/>」の使用は、終了タグを指定していることを意味します。

詳細情報:リファレンス

ただし、この制限は、すべてのタグを閉じる必要があるXHTMLには当てはまりません。(または、すべてのタグを閉じる必要があるという制限はXHTMLにのみ適用されると言うべきかもしれません);-)

于 2009-01-27T18:41:17.033 に答える
0

問題は、入力が<li>要素内にあることだと思います。要素はデフォルトではブロックレベルの要素ではありません。これは通常、このような「コンテキスト外」エラーの原因です。それはあなたのページを全く傷つけませんが、それが検証されないようにするだけです。

于 2009-01-27T18:37:06.120 に答える
0

HTMLまたはXHTMLを使用していますか

HTMLでは、<input>タグに終了タグはありません。

XHTMLでは、<input>タグを適切に閉じる必要があります。

http://www.w3schools.com/tags/tag_input.asp

于 2009-01-27T18:43:42.160 に答える
0

指定したコードの前に閉じられていないインライン要素がありますか?インライン要素のリスト:http://htmlhelp.com/reference/html40/inline.html(html4の場合)

于 2009-01-27T18:44:33.750 に答える
0

例えば。[コード]

[/コード]

入力タグを

鬼ごっこ

上記のように入力タグを必ず閉じてください。

これは検証する必要があります。

マーク

于 2009-04-16T05:08:09.997 に答える