2011-07-08 13 views
5

私は、多くのWebサイトが、最新のウェブデザインの実践にもかかわらず、XHTML Transitionalでデザインされていることに気付きました。移行計画は、古いマークアップを移植するための一時的な解決策であり、再設計に多大な労力を必要とする可能性があると考えました。XHTML Strictマークアップを書く価値がありますか?

多くのWebサイトでは、暫定移行でも正しく検証されません。不適切なマークアップは、何かがうまくいかないときにデバッグするのが難しいという信念のもと、厳しい基準を厳守するよう非常に努力しています。しかし、それは100%有効なコードを書く仕事の多くです。

XHTMLの厳密に準拠したマークアップを学び執筆する価値があるのか​​どうか不思議です。

編集:そうだとすれば、なぜそれ以上の人はしませんか?適切なXHTMLの厳密なウェブページを見つけ出すことは、まれに思えます。

答えて

4

短い回答:いいえ。

私はStrict XHTMLが努力する価値があることはありませんでした。

最初の問題は、実際に役立ち、優れた代替ソリューションがない多数のHTML機能を非難したことです。以前のブラウザとの下位互換性が必要な場合(これは誰でも)、特に問題でした。 Transisional仕様はこれらの機能を非難するものではありません。なぜなら、Strictよりもむしろユーザーがそれを使用する理由です。廃止され

特長<center>タグ(CSSの選択肢が一度にクロスブラウザの互換性はありませんでした)、あなたは、新しいウィンドウ、タブまたはフレーム内のリンクを開くことができます<a>タグ(のためのtarget属性が含まれ;これを行う方法は他にありません。誰もそれを使用しなくなり、HTML5がそれを再導入しました)。同じ行には他にもいくつかの機能がありましたが、それは長い時間がかかりましたが、私はそれらをすべて覚えていません。

第2に、マークアップにエラーが最小であってもブラウザが失敗するように設計されています。これは理論的には素晴らしいように聞こえるが、いつも失敗する運命だった。これは基本的に、仕様書作成者がウェブの主要な問題であった(そしてある程度は依然として)低品質のHTMLコードの拡散に対する反動的なステップでした。しかし、クライアント/サーバープロトコルを設計するための鍵となるルールは忘れていました。つまり、サーバーは送信する内容について厳密にする必要がありますが、クライアントは寛大でなければなりません。すべての成功したクライアントサーバープロトコルは、この規則に従います。

あなたのマークアップが有効であることを気にすることは良いです - 実際には、それは関係なく、あなたが書いているものを(X)HTMLの方言の、非常に重要だ - しかし、あなたは開発段階でその、ないをチェックする必要がありますエンドユーザーのブラウザで検証が行われます。あなたが良い開発者であれば、コードがユーザーの近くに来る前に良いことを知っておく必要があります。実際には、それがエンドユーザーの前で完全に壊れてしまった場合、それは災害です。壊れたHTMLでは、たとえそれがひどく壊れていても、ユーザーは一般的にサイトをナビゲートして読み込み、エラーを報告する連絡先の詳細を見つけることができます。厳密なXHTMLのdoctypeを尊重するブラウザでは、小さなマークアップエラーにより、サイトに標準のブラウザエラーメッセージ以外の何も表示されないことがあります。これは非常に貧弱なユーザーエクスペリエンスです。

最後に、新しい機能はありませんでした。古いHTMLバージョンではしなかったことの1つは、ドキュメントをXMLドキュメントとして解析できるようにすることでした。これは、ドキュメントにエラーがないことを確認するのには効果的でしたが、実際にはあまり効果がありませんでした。名前空間を使用して、他のXMLフォーマットをドキュメントに埋め込むこともできますが、これは複雑であり、実際にはそれほど新しいものでもありませんでした。

XHTMLは常に理想主義的な夢でしたが、HTML5が新しいエキサイティングなものとして引き継がれたことを感謝しています。

+0

廃止予定の便利な機能の例をいくつか教えてください。すべての機能に優れたXHTML準拠のソリューションがあるように思えました。 – tskuzzy

+1

@tskuzzy - 大丈夫、私はその日にXHTML Strictに移行することを妨げた2つの機能を含むように答えを編集しました。 – Spudley

1

私は数年のために厳格なマークアップを書いてきたと私は見ることができ目立っメリットはありません。

私はHTML5 <!DOCTYPE html>を使用する方がはるかに簡単です。なぜなら、IEではうまく機能しなくなるからです。

4

私はすべてのXHTML厳密な記述に使用しましたが、それは私のマークアップが意味的に正しいと気にしていたからです。残念ながら、ほとんどのWeb開発者は、(a)意味的に正しいコードを気にしない、または(b)問題があることに気づいていない。

Strictで書きたい場合は、ページを作成してからバリデーターを実行してください。何が間違っているのか、何を修正する必要があるのか​​を教えてくれるでしょう。あなたは、あなたがするべきことやしてはならないことに沿って進むにつれて学びます。 official specを見ると、大いに役立つことがあります。

また、HTML5に移行することをおすすめします。 HTML5には "strict"や "transitional"のようなタイプはありません。より厳しいルールで書きたい場合は、できます。あなたが敗者のルールで書くことを望むなら、あなたはできます。私はまた、すべての周りのクリーナーと私はHTML5を書くのがXHTMLよりもずっと楽しいと感じています。再度、バリデーターを通してあなたのサイトを動かすことは、それが間違っていることをあなたに知らせるでしょう。

もっと多くの人々がやっていることについては、私はHTML5への大きなプッシュがあると言います。新しくてクールなことだからだけでなく、XHTMLとHTML4に存在していた多くの厄介さと不快感が修正されているからです。

私の推奨はその方向に向けることです。

+0

有効なマークアップを書くことが重要だと私は確信していますが、XHTML Strictはユーザーの前に妥当性検査を置くことは決してありませんでした。それがユーザーの近くのどこかに届くずっと前に行われます。 – Spudley

0

私ははい(ish)と言います。

通常、厳格なバージョンを選択することで、今後どのような基準を守るべきかが決まります。すなわち、厳格な(しかし過渡的に許容される)xhtmlの非推奨属性は、標準の後のバージョンには現れない。

私の経験則は、xhmtlからhtml5への動きで壊れています。 html5には厳密なバージョンはありませんが、xhtml strictではなくhtml5(またはxhtml5)でも使用できます。

しかし、私は一般的に何かの最も厳しいバージョンに固執しようとすると、次のバージョンの準備が整った状態になるようにします。つまり、物事は(理論上)逆行しません。

関連する問題