0

少し前に、場合によっては終了タグ (</li>など) を省略すると、Web ページのレンダリング (およびバイト数が少ないため、読み込み/解析) が高速化されることを読んだことを覚えていますか?

残念ながら、これをどこで読んだか忘れてしまいましたが、この機能は HTML 4.0 固有のものであると書かれていたことを覚えています。

このソースにアクセスできなくなったので、誰かがこれを確認したり、w3c のドキュメントにリンクしたりできるかどうか疑問に思っていました (自分で見つけることができなかったため)。

ありがとう!


編集:この動作が HTML5 でも利用できるかどうかを尋ねるつもりだったことを忘れていました。


編集 2:記事をもう一度見つけることができましたが、実際のレンダリングではなく、ページのダウンロード速度のみを高速化すると述べています。

これらの要素の終了タグを省略する正当な理由の 1 つは、ページのダウンロードに余分な文字が追加され、ページの速度が低下するためです。Web ページのダウンロードを高速化する方法を探している場合は、オプションの終了タグを取り除くことから始めるのがよいでしょう。多くの段落や表のセルを含むドキュメントの場合、これは大幅な節約になる可能性があります。

くだらない質問してすみません!:(

4

6 に答える 6

3

HTML 4.01 要素のリストを次に示します。

http://www.w3.org/TR/html401/index/elements.html

終了タグ列には、終了タグがオプションである場所が示されています。
ただし、これは HTML 4.01 でのみ有効であることに注意してください。Xhtml では、すべての終了タグが必要です。HTML5 について 100% 確信があるわけではありません。

私は一度 HTML パーサーを書きましたが、信じてください。あなたがパーサーで a の内部にいて<p>、終了タグに遭遇した</table>場合、それが正しいかどうかをドキュメント ツリーにチェックインするのが遅くなり、正しい場合は、それを閉じるのに時間がかかります。<p>単に</p>. _

編集:
ああ、見つけた: http://dev.w3.org/html5/html-author/#index-of-elements
HTML 4.01 と同じ要件。

新しい編集:
ああ、それは 2009 年のページでした。これはより最新です:
http://dev.w3.org/html5/spec/syntax.html#optional-tags

于 2012-04-12T20:06:32.773 に答える
2

HTML 仕様の一部のバージョンの一部のタグには、オプションの終了タグがあります。ただし、終了タグを除外することは一般的に悪い形式と見なされていると思います。

前述のように、の終了タグはlihtml4 ではオプションです。

http://www.w3.org/TR/html401/struct/lists.html#h-10.2

技術的にはこれは有効です:

<ul>
    <li>
        text
    <li>
        <span>stuff</span>
</ul>

しかし、 ごとに 5 文字しか節約できliず、読みやすさや保守性を失うほどの価値はありません。

編集: HTML5 仕様は興味深いものです:

li 要素の直後に別の li 要素が続く場合、または親要素にコンテンツがない場合、li 要素の終了タグは省略できます。

于 2012-04-12T20:09:31.343 に答える
2

AFAIK、XHTMLでは、少なくともタグを常に自己終了する必要があります<img ... />

HTML (非 xml-html) では、一部のタグを閉じる必要はありません。<img>例えば。ただし、対象のバージョンを正確に把握し、W3C の検証サービスを使用して再確認することをお勧めします。

http://validator.w3.org/

ページごとに送信するデータのバイト数を減らす必要があることを除いて、これがどのように高速化されるかはわかりません(一部のタグには/がなく、他のタグには終了タグはありません)。DOMの構築に関しては、私はしません特定の実装 (webkit、mozilla など) の詳細を把握して、どの方法がより高速に解析できるかを知る必要があります。XML は単純に、より規則的だからだと思います。

編集: はい、この動作は HTML5 で利用できます。次のようなヘルプ ページはわかりにくいことに注意してください。

http://www.w3schools.com/html5/tag_meta.asp

非 xml-html のメタは / を必要としませんが、含めることができます。(私の意見では) XML 風味の HTML に傾いているため、記述された HTML では末尾のスラッシュがより一般的ですが、ドキュメントでは両方のスタイルが使用されていることがわかります。バリデーターは、何を回避できるかを確実に知らせてくれます。:)

于 2012-04-12T19:57:22.917 に答える
2

終了タグを省略することは、通常、ブラウザによって許容されます (ブラウザは通常、ユーザーが何をしているかを知るのに十分スマートです)。ただし、閉じられていないタグが持つ css または js マークアップ プロパティは、子孫タグや兄弟タグに影響を与える可能性があり、何が起こったのか頭を悩ませることになります。

XHTML では自己完結型タグに終了スラッシュを追加する必要がありますが、HTML 5 ではそうではありません。

XHTML: <img src="" />
HTML5: <img src="">
于 2012-04-12T20:11:26.347 に答える
1

1999 年に W3C 勧告となった HTML 4.01 では、あなたは正しいです:

9.3.1 段落: P 要素

開始タグ:必須、終了タグ:オプション

http://www.w3.org/TR/1999/REC-html401-19991224/struct/text.html#h-9.3.1

については<li>

開始タグ:必須、終了タグ:オプション

http://www.w3.org/TR/1999/REC-html401-19991224/struct/lists.html#h-10.2

于 2012-04-12T20:08:51.837 に答える