新しい Web ベースのアプリケーションを開発する場合、どのバージョンの html を目指すべきですか?
編集:
私は他の人の感覚をつかもうとしていたのですが、自分の仕事では XHTML 1.0 Strict を使用し、他の人がコンテンツの作成に関与している場合は Transitional を使用する傾向があります。
最初の XHTML 1.0 Transitional の投稿を「正解」としてマークしましたが、その時点で与えられたすべての回答が等しく有効であると強く信じています。
HTML4.01. 「あいまいな」Web ブラウザーでのみ実行したい実験的または学術的な問題以外に XHTML を使用する理由はまったくありません。
XHTML Transitional は、それらのブラウザーにとってもまったく無意味なので、なぜそれを目指す人がいるのかわかりません。多くの人がそれを推奨していることは、実際にはかなり憂慮すべきことです.
HTML 4.01 を目指すのが最も予測しやすいと思いますが、「ページをレンダリングするものなら何でもできる」という Teifion の言葉は正しかったのです。
Michael Stumへの返信:
XHTML は XML ベースであるため、解析が容易になり、ほとんどの IDE の XML コンポーネントを使用して、プログラムでクエリを実行したり、挿入したりすることもできます。
これは確かに真実ではありません。Web 上の XHTML の多く (ほとんどではないにしても) は、XML の有効性に準拠していません (その必要はありません。XML として送信されているわけではありません)。これを扱う際に XML のように扱おうとすると、頭の痛い問題が発生するだけです。たとえば、スタック オーバーフローに関するこのページでは、無効なマークアップがあるため、多くの容赦のない XML ツールでエラーが生成されます。
私は XHTML Transitional 1.0 を狙っています。XHTML strict を好まない微妙なニュアンスがまだいくつかあります。私が今見たほとんどのエディターは、物事が正しく行われていることを確認するための適切なナッジを提供します。
XHTML と HTML の移行版は非推奨です。これらは、CSS をサポートしない古いユーザー エージェントのみを対象としていました。DTD の説明を参照してください。
W3C は、可能な限り Strict を使用することを推奨しており、最近ではそれが確実に可能になっています。
暫定版は XHTML/1.1 と HTML5 で既に削除されています。
XHTML/1.0 には、HTML4 とまったく同じ要素と属性 (セマンティクス) があります。XHTML/1.0 仕様では、要素さえ指定されていません! 構文以外については、HTML4 を指します。
さらに、HTML で使用できない XHTML の機能 (名前空間、XML DOM) を使用することはできませんtext/html
。
2008 年の正しい選択は HTML4 Strict です。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
しかし、2016 年現在、重要なHTML のバージョンは 1 つだけです。
<!DOCTYPE html>
XHTML の使用については、主にそのようなドキュメントの MIME タイプを次のように送信する必要があるという事実を中心に、説得力のある 警告がいくつかあります。
Content-type: application/xhtml+xml
ただし、IE 6 および 7 はこれをサポートしていないため、Web サイトは次のように送信する必要があります。
Content-type: text/html
残念ながら、その方法は有害であると考えられています。
また、XHTML の目的は Web ページを XML パーサーで解析可能にすることですが、既存の Web サイトでの不適切な使用により、実際には失敗したという事実を嘆く人もいます。
私は今でも XHTML 1.0 Strict でドキュメントを書くことを好みます。これは主に、課題と、バリデーターが提供するクリーンさとエラー チェックのためです。タグがいつ終了するかなどを非常に明示的にする必要があるため、構文を少し楽しんでいます。これは、純粋に技術的なものではなく、個人的な選択です。
@マイク:
ページをレンダリングするために有効性が必要ないことには同意しますが (結局のところ、IE6 との互換性を維持する必要があります...)、互換性があり有効な有効な XHTML を作成することは問題ではありません。問題は、人々が HTML 4 に慣れていて、廃止されたタグと属性を使用しているときに始まります。
Web ががらくたの山であるからといって、すべての新しいページもがらくたの山である必要があるわけではありません。SO のほとんどの検証エラーは非常に些細なものであり、属性の引用符の欠落など、修正にそれほど時間はかかりません。
しかし、W3C がどこに行こうとしているのかまったくわかっておらず (HTML 5 を参照)、オペレーティング システムも製造している特定の大きなブラウザ会社も気にしないという事実を考えると、それはまだ無意味かもしれません。サイトは HTML 1337 と同じようにその doctype を送信することができ、ブラウザは引き続きレンダリングを試みます。
Dillie-O は XHTML 1.0 Transitional の回答で正しいですが、XHTML 1.0 Strict を選択し、Strict では許可されていない機能が絶対に必要な場合にのみ、Transitional にフォールバックすることをお勧めします。
使用する一般的な標準に関係なく、ページをレンダリングするものはすべてレンダリングされます。XHTML はより厳密で、おそらく「より優れた」ものですが、ある標準が他の標準よりもどのような利点をもたらすかはわかりません。
XHTML 1.0 Trans を目指します。ブラウザーのバグが修正されたときに、実際に何を変更する必要があるかを突き止めようとして、突然時計に逆らって作業することがないように、順応する方がよいでしょう。
私の意見では、1.1 は壊れており、2.0 は粉々に砕かれています。本当にヘッダー/フッター タグが必要ですか?
私はいつも XHTML Strict に賛成です。私は、HTML はもっと XML に似たものであるべきだと強く信じています。XML を知っていて、W3 のバリデーターが正しい道を指し示してくれるなら、それを検証するのは難しくありません。
XHTML 2.0 は、W3 が長い間目指してきたセマンティック Web に向かっています。私にとっての XHTML 2.0 の最大のメリットは、Web 上のすべての準拠ページがコンテンツとして、または記事 (ページとはつまりドキュメント) として理解できることです。なぜなら、それらはすべて同じ標準に適用されるからです。その後、まったく異なる方法でコンテンツを表示するインタープリター (つまり、ブラウザー) を構築することができます。ここには文字通り何千ものアイデアが待っています。
他の XML ドキュメントと同じように XHTML を生成するツールがある場合は、XHTML を使用してください。しかし、プレーン テキスト テンプレートやテキスト連結などを使用する場合は、古き良き HTML 4.01 で問題ありません。
ブラウザーは現在、この 10 年前の標準をサポートし始めています。
個人的には、XHTML 1.0 Transitional の方が好きです。
XHTML は XML ベースであるため、解析が容易になり、ほとんどの IDE の XML コンポーネントを使用して、プログラムでクエリを実行したり、挿入したりすることもできます。
Transitional は strict ほど厳密ではないため、多くの場合 PITA になる可能性がある strict と比較して、比較的簡単に操作できます。Transistional と Strict の比較
1.0 は 1.1 よりも「互換性が高く」、1.1 はまだ何らかの開発段階にあるようです。
XHTML 1.0 を HTML 互換の方法で使用したい場合は、それで問題ありません。ただし、W3C バリデーターと XHTML DTD は、MIME タイプと、それらの間のブラウザーの動作の違い (<map> 名/ID の一致など) について何も知らないことに注意してください。DTD は、ブラウザーが特定の要素 (たとえば <embed> など) をどの程度サポートしているかについても何も知りません。
これが意味することは、XHTML DTD とバリデーターは現実を反映しておらず、それらに準拠しようとしても無意味だということです。
特定の要素を /> で閉じるためだけに XHTML を使用したい場合 (html と互換性がある場合)、HTML5 マークアップを使用するだけです (ブラウザーが完全な標準モードになります)。HTML5 では、HTML 互換の方法で /> を使用できます (text/html で XHTML 1.0 マークアップを使用する場合と同じ HTML 互換の方法です)。次に、ブラウザで機能するもの (DTD よりもよく知っています) に固執します。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8"/>
<title></title>
</head>
<body>
<p>Line1<br/>Line2</p>
<p><img src="" alt="blank"/></p>
<p><input type="text"/></p>
<p><embed type="application/x-something" src=""/></p>
</body>
</html>
次に、 http: //validator.nu/を使用して、少なくとも整形式であることを確認します。
XHTML を使用するかプレーン HTML を使用するかは、実際には問題ではないと思います。ここでの最終目標は、予測可能なレンダリングにより、メンテナンスを減らし、迅速な開発を行うことです。検証コードがある限り、xhtml または html を使用してこれを取得できます。quirks モードをターゲットにするのが最善であるという議論も聞いたことがあります。新しいバージョンのブラウザーでは quirks モードが変更されないため、メンテナンスが容易だからです。
最終的には、すべてがタグ スープになります。これには正当な理由があります。Web アプリの開発者にエラーのない HTML を書かせることは、バグのないコードを書くように要求することを意味するからです。バリデーターは最初のページ ビューのみを検証するため、役に立ちません。これが、xhtml が静的サイトを超えて xml として機能するのを見たことがない理由でもあります。xml として Web アプリを提供するために Web アプリ開発者が必要とする傲慢さのレベルは驚異的です。
HTML 4.0 Strict、または ISO HTML。