XHTML チュートリアル: Transitional と Strict の違い

XHTML チュートリアル: Transitional と Strict の違い

実際、XHTML 1.0 は、Transitional DOCTYPE と Strict DOCTYPE の 2 つのタイプ (Frameset DOCTYPE が含まれている場合は 3 つになりますが、これについてはこの記事では説明しません) に分かれています。 HTML 4.01 にも同じドキュメント宣言があります。
今日、Web 標準を推進する人たちは、XHTML は HTML よりも厳格であると言うことがよくあります。もちろん、ある意味ではそうです。たとえば、すべてのタグを閉じ、すべての属性を引用符で囲む必要があります。しかし実際には、XHTML 1.0 は Transitional DOCTYPE と Strict DOCTYPE の 2 つのタイプ (Frameset DOCTYPE が含まれる場合は 3 つ、この記事では説明しません) に分かれています。 HTML 4.01 にも同じドキュメント宣言があります。

意味は文字通りの名前からわかります。Transitional DOCTYPEs は旧時代から新時代への移行のみを対象としており、Strict DOCTYPEs は HTML 4.01 および XHTML 1.0 の構築に適用可能なデフォルトのドキュメント宣言です。
コードには古い記述方法が多すぎるため、一度に Strict DOCTYPE に完全に変換することが難しいため、一般的に Transitional DOCTYPE が使用されます。しかし、厳密な DOCTYPE が目標となるはずです。構造とプレゼンテーションを分離し、プレゼンテーション コードを CSS で記述することが推奨され、場合によっては強制されることもあります。 HTML 4 ドキュメントタイプ定義:

この HTML 4.01 Strict DTD には、プレゼンテーション レイヤーの属性とタグは含まれていません。W3C は、これらの属性とタグを段階的に廃止する予定です。これらを実装するには、スタイル シートを使用できます。 Strict DTD を使用する必要があります。プレゼンテーション属性とタグのサポートを得るには、Transitional DTD を使用します。

Strict DOCTYPE を使用すると、ブラウザにページを最も厳密かつ (ある程度) 最も標準に準拠したモードでレンダリングするように指示できるという追加の利点があります。
Tommy Olsson 氏は、Web Standards Group の Tommy Olsson 氏への 10 の質問で、Strict を使用する利点を詳しく説明しています。

HTML 4.01 Strict であろうと XHTML 1.0 Strict であろうと、Strict DTD を使用することは、HTML を使用するか XHTML を使用するかを議論することよりもはるかに重要だと思います。それは将来のインターネットの品質を表しています。構造とプレゼンテーションを分離することで、サイトのメンテナンスが非常に簡単になります。

Web 標準と適切なセマンティック構造を初めて知る人にとって、Transitional DOCTYPE と Strict DOCTYPE の違いを認識することは重要です。より詳細なリストについては、「XHTML: Strict と Transitional の違い」、「Strict XHTML と Transitional XHTML の比較」、および「DTD による XHTML1.0 要素属性」を参照してください。
Strict に移行する準備ができている人にとって、開発者が間違いを犯す可能性のある 2 つの違いがいくつかあります。これについては次に説明します。 Strict DOCTYPE でサポートされていないタグ center font iframe srike u Strict DOCTYPE でサポートされていない属性 align (table 関連でサポート: col、colgroup、tbody、td、tfoot、th、thead、tr) language background bgcolor border (table でサポート) height (img と object でサポート) hspace name (HTML 4.01 Strict でサポート、XHTML 1.0 Strict の form と img ではサポートされていない) noshade nowrap target text、link、vlink、alink vspace width (img、object、table、col、colgroup でサポート) コンテンツ モデルの相違点 要素タイプのコンテンツ モデルは、その要素タイプのどのようなインスタンスを含めることができるかを説明します。この点において、2 つのドキュメント宣言の最大の違いは、blockquote、body、および form 要素には次のようなブロック レベル要素のみを含めることができることです。テキストと画像は body に直接含めることができず、p や div などのブロック レベル要素によって含める必要があります。入力要素は、form 要素の次のレイヤーに直接含めることはできません。blockquote 要素内のテキストは、p や div などのブロック レベル要素によって含める必要があります。すべてのプレゼンテーションを CSS に任せ、Strict 標準に準拠します。Strict DOCTYPE への移行プロセスでは、各要素がどのように見えるかを知るよりも、各要素が何をするのかを理解する方がはるかに効果的です。
まず構造とセマンティクスについて考え、次にパフォーマンスについて考えます。

<<:  Vueはデジタル千単位区切り形式をグローバルに実装します

>>:  一般的な nginx コマンドをシェル スクリプトに組み込む方法の詳細な説明

推薦する

MySQL 8.0 ウィンドウ関数の紹介と概要

序文MySQL 8.0 より前は、Oracle、SQL SERVER、PostgreSQL などの他...

Flex レイアウトで適応型ページを作成する (構文と例)

Flex レイアウトの紹介英語の Flex はフレキシブル ボックス、つまり伸縮性のあるボックスを...

MySQLのネストされたトランザクションで発生する問題

MySQL はネストされたトランザクションをサポートしていますが、それを実行する人は多くありません....

MySQL 8.0 の新機能 - チェック制約の紹介

目次序文チェック制約作成、削除、表示制限要約する序文MySQL 8.0 では、チェック制約という非常...

Dockerコンテナレイヤーの概念の詳細な説明

目次01 コンテナの一貫性02 レイヤーの概念03 レイヤードデザインの利点今日はコンテナ レイヤー...

ミニプログラムは左スライドのドロワーメニューをネイティブに実装します

目次WXS レスポンス イベントプランAページ構造とスタイルWXS イベントコールバック関数WXS ...

シンプルなタブバー切り替えコンテンツバーを実装するJavaScript

この記事では、タブバーの切り替えコンテンツバーを簡単に実現するためのJavaScriptの具体的なコ...

nginxを使用してドメイン名ベースの仮想ホストを構成する

1. 仮想ホストとは何ですか?仮想ホストは、特殊なテクノロジーを使用して、実行中のサーバーを論理的に...

JavaScript の差異を利用して比較ツールを実装する

序文仕事では、毎週従業員が提出した資料を数える必要がありますが、それを一つずつコピーして貼り付けるの...

Win7 の VMware 仮想マシンに Linux7.2 をインストールするインターネット アクセス構成チュートリアル

参考までに、win7システム上のVMware仮想マシンにlinux7.2インターネットアクセス構成を...

MySQLフィルタリングレプリケーションのアイデアの詳細な説明

目次mysql フィルター レプリケーションメインデータベースに実装ライブラリから実装いくつかの質問...

高性能ウェブサイトの最適化ガイド

パフォーマンスの黄金律:エンドユーザーの応答時間のわずか 10% ~ 20% が HTML ドキュメ...

mysql5.7.18 のインストール時にエントリが見つからない問題の解決方法

mysql5.7.18のインストール時に次の問題が発生しました: プログラム入力ポイントfesetr...

HTML pre タグ内の自動改行

このとき、overflow:auto;(コードがコンテナの境界を超えたときにスクロールボックスを表示...

Windows に WSL をインストールして構成する方法

WSLとはBaidu 百科事典からの一節を引用します。 Windows Subsystem for ...