リンター対有効:違いは何ですか?

リンター対有効:違いは何ですか?

TIP: リンターは、 両者の差があるされ、そしてそれらがどのようにウェブ開発を改善するために使用することができるか、 検証 し、私は 何を理解して います。

多くの人々は、「HTMLの検証」とチェッカー他のWebページの違いについて混乱しています。 この混乱は、支援と 検証さ れ ていない プログラムの用語「有効」とプロモーター著者の頻繁な誤用により教唆されます 。 両方がエラーを回避したいHTML作者のために有用である可能性があるが、実際には、プログラムの2種類の間には大きな違いがあります。

妥当性

Validatorは 文書型定義(DTD)で定義され、厳格な仕様に対して、HTML文書の構文をチェックするプログラムです。 HTMLは、実際にSGML(標準汎用マークアップ言語)のアプリケーションであり、すべてのSGML文書がDTDに従ってください。 いくつかの標準的なHTML DTD(および、そのようなSGMLの簡略化した形であるSGMLまたはXMLの新しい拡張マークアップ言語で文書の他のタイプのものなど、多くの非HTML DTDは、)があります。 HTMLのバージョン2.0、3.2、4.0と正式にW3C(World Wide Webコンソーシアム)によって承認されたすべてのDTD。 (HTML 1.0は正式なスペックを持っていた、と単純に前のバージョン2.0に使用されているHTMLの早期フォームを記述するために緩く使用される用語ですありません。)

バリデータは、ページが仕様。特別な構文的に正しいかどうかを決定するためにこれらのDTDのいずれかを使用しています。 使用されているDTDはあなたによって決定されます <DOCTYPE!> あなたのページのそれぞれの先頭になければなりません宣言..

バリデータは、特定のサイトが標準に準拠している場合伝えるための唯一の方法です。 これは、タグのいくつかの場合にはあなたを教え、あなたは非標準の拡張機能を使用するDTDの一部ではないことを、属性、およびまた、不良などの構文エラーございますでしょう ネスティング それらを必要とする要素を閉鎖し、不足しているインデックスを。 これは、このようなエラーを見つけるために、バリデータを通して、あなたのページを実行し、意図しないバリデータがエラーを発見し修正するために、良いアイデアです。 こうした非標準タグのような「意図的」エラーのため、あなたが特定の視覚効果を得るために使用することを属性として、それは検証したり残すためにあなたのページを取得するために削除するかどうかはあなた次第ですただし非標準でそれら。 いくつかのケースでは、非標準の要素は、それらをサポートしていないブラウザでは正常に低下しますので、それらを維持するために合理的に安全です。

この記事の終わりまでにいくつかのオンラインの検証へのリンクがあります。

リンター/ルダム

オンラインサイト、ソフトウェアの独立、および機能など、他のプログラムの数がありますが、内蔵のHTMLエディタ「公正」の様々な形のためにあなたのページをチェックします。 そのうちのいくつかは、「バリデータ」と呼ばれていますが、反対にサイトを検証するためにDTD SGML標準を使用していない場合、彼らは本当にバリデータではありません。 (「リトマス試験」は、任意のは、「バリ」を主張した場合にはDOCTYPE宣言がある場合、その後、本当のバリデータがあるとして、有効なページを渡すことです。)

これは、リンターやチェッカーと呼ばれることができ、これらの「未検証」プログラムは、有用ではないと言っているわけではありません。 彼らは、このような互換性の問題やアクセシビリティの構文要素のエラーなどのウェブページで様々な問題を発見し、いくつかのケースでは、リンク「404見つかりません」というエラーやタイプミスのための英語のテキストをチェックします。 コードが仕様に従って有効ですが、規格によって対処されていない他の懸念を持っている場合、バリデータは、ないだろうと時々リンターは、あなたのサイトで問題を見つけることができます。

しかしそれはどんな公式の標準に基づいていないので、リンターの生産は、塩の粒で撮影する必要がありますが、唯一の好み、偏見、およびプログラムの作者のいらいら。 私は(私はまだ持っていない)リンターを書いた場合、私はおそらく、「./」ディレクトリに「index.htmlを」の代わりに、直接にそのリンクを文句を言うでしょう。 (参照してください。 この鉱山の議論を 。)しかし、それはちょうど私が好むのです。 それは、他にこのようなものを作るために、任意の標準的なHTMLやURLに違反しません。 (それは私の一部にだけ少なくスタイリッシュです。)

DOCTYPE宣言

どの文書のDOCTYPE宣言に対するドキュメントを検証するための標準的なHTMLのバリデータを設定します。 DOCTYPEがない場合、または正しくない場合、これはバリが言うように、エラーことができます奇妙なものを報告するようになります <html> タグは不明です。 だから、あなたはあなたのページを検証したい場合は右のDOCTYPEを持っている必要があります。

理論的には、ブラウザによっては正常にさまざまな機能を使用しているバージョンを確認するためにDOCTYPE HTMLを使用して、最終的に有効または無効にすることができますが、実際には、実際に何もしない(最近まで下記参照します)ワーキングので、DOCTYPEは検証のみに使用のものであり、ブラウザでページの外観に影響を与えません。 あなたもDOCTYPEを導入するバリデータと心の中でいくつかの「純粋主義者HTML」を使用する場合は、持っている必要が反対に「スープタグなどの規格のための彼らのサポートを示す「政治声明」として自分のページ一般的なブラウザで「ランダム。

最近では、いくつかのブラウザのバージョンが古いブラウザの癖との互換性を維持しようとすると、「Quirksモード」と、より良い現在の規格に準拠する「標準モード」を切り替えるには、「盗聴DOCTYPE」を使用し始めました。 Mozillaのちょうど三つの モード:規格に関する標準、および癖。 距離画像や表は、特にこの影響を受けています。 いくつかのニュースグループのコメントは良いことか悪いことに、この議論かどうかを含めて、とWHOのプログラムからの実用的なコメントは、自分のページの神秘的なものかどうかを見つけ、彼らが使用するDOCTYPEに応じて、得られました。 この上でいくつかのコメントを参照してください。 「キャンプの純粋主義者」と呼ばれるCOは、中で行われているように見えるので、流行の互換性標準からブラウザに移動するには、「DOCTYPEスニッフィング」アプローチについて、いくつかの不安を持っている要因のアイデアを気に入っている間DOCTYPEのURLでこのようなDTDなど-aかなり気まぐれ適し無関係なものではなく、DOCTYPEの意味の真の完全な理解を示すよりも、使用するモードを決定します。

DOCTYPEは、異なるセクションで、少し難解な構文である標準が続いている指示するとどのような組織を適用されますが、文書型は、あなたがのDTDに私たちを作成している場合を除きないで、(自分自身を構築する必要があります真実は良いアイデアあなたが他の人が理解することができるようになります基準を遵守するために必要な場合)、あなただけの適切な標準DOCTYPEを取ることができるようにあなたが続くとあなたのページにそれを「カットアンドペースト」にしたいです彼らは彼らのドキュメントを検証しようとして始めた前に、しばらくの間、書き込みHTMLたといくつかの「presentationalist」のものを使用するために使用されている場合は特に。多くの人々が、最も便利なDOCTYPEがあることです見つける可能性がありますそれHTML 4.01(以前のマイナーリビジョン4.0としてW3Cによって承認)移行

<DOCTYPE HTML PUBLIC! "- / / W3C / / DTD HTML 4.01 Transitional / / EN" "http://www.w3.org/TR/html4/loose.dtd">

このDTDは、現在のページとNetscapeまたはInternet Explorerの機能拡張は、重要な特性を失ったり、外観を損なうことなく、検証するために行うことができるよう、以前に考えられていたちょうど約すべてのタグと属性が含まれています。 このDTDにない「拡張」タグと属性はおそらく、非常に重要なので、彼らは一貫してサポートされていないブラウザを使用するだけで他のブラウザを聞かせするのは良いアイデアではありません。

あなたがしたい場合は、「厳格な」コード・ロジックは、プレゼンテーションではなく、タグ昔ながらのプレゼンテーションのスタイルシートに移動し、厳格なDOCTYPEを使用します。

<DOCTYPE HTML PUBLIC! "- / / W3C / / DTD HTML 04:01 / / EN" "http://www.w3.org/TR/html4/strict.dtd">

このドキュメントのプレゼンテーションは、多くのラベルや属性、構造の窓ガラス(勧告に視覚的に文書を与えるスタイルシートで使用するための)純粋なロジックを除外します。

「フレームセット」DOCTYPEもあります。

<DOCTYPE HTML PUBLIC "- / / W3C / / DTD HTML 4:01 Frameset / / EN" "http://www.w3.org/TR/html4/frameset.dtd"!>

これは、フレームセットドキュメントで使用されるべきです。 個々のフレームワークは、このような暫定HTML 4.01のように、定期的なDOCTYPEを使用する必要があります。

こうした3.2や2.0のように過去の異なる文書型もあります。 (3.0が承認されていないと使用すべきではない、それはブラウザに実装なされたことのない様々な機能を備えています。)古いブラウザのご支援に非常に保守的になりたい場合はそれが可能です通常は、2.0または3.2 DOCTYPEでドキュメントを検証しようとしていますが、最新の使用に注意している場合、これは必要ありません正常に低下します

そして、今日のブラウザと互換性を持つように設計されたXMLアプリケーションとしてHTMLの完全な再定式化、が、新しい構文ルールがたくさんあるXHTML 1.0 DOCTYPEは、あります。 あなたが仕様読んで、新しい標準にドキュメントを投影したい場合は、コンソーシアムW3のサイト、およびこれらのdoctype(正式にW3C勧告として承認された)のいずれかを使用します。

XHTML 1.0:

<DOCTYPE html PUBLIC "- / / W3C / / DTD XHTML 1.0 Strict / / EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"!>

<DOCTYPE html PUBLIC "- / / W3C / / DTD XHTML 1.0 Transitional / / EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"!>

<DOCTYPE html PUBLIC! "- / / W3C / / DTD XHTML 1.0 Frameset / / EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">

XHTMLは、それはまた、(DOCTYPE上記の)文書の一番上にXML宣言を使用する必要があります:

<Xml version = "1.0" encoding = "UTF-8"?>

…しかし残念ながら、この行は、ドキュメントが標準に送信されるにもかかわらず、その代わりにプレーンテキストHTMLとしてそれらを表示すること、Mac用のMicrosoft Internet Explorerの一部のバージョンを混同しているようだText / HTML MIMEタイプ。 (まあ、 一部の人はとXHTMLページ奉仕しようとしているtext / XML 、より正確で、厳密モード標準チェックで技術的にいくつかの新しいブラウザを作るMIMEタイプを、それはページがマイクロソフトのインターネットに完全に失敗しますエクスプローラ。)(しかし、その後、再び、Microsoft Internet Explorerが常にMIMEタイプを無視し、彼がやってような感じ何をすることが知られています。)

(あなたが満たすためにここに部屋を持っていることを確認し、UTF-8文字エンコーディングを参照してください。 文字エンコーディングを使用すると、ASCII文字を使用しない場合はあなたが実際にしている。しかし、特別な文字や記号ない外国IT-それは本当に多くの違いはありませんが、それはあなたが他の文字をエンコードする方法に影響を与えます。)

01/01 XHTMLの 文書型は、W3C勧告として今承認されています。 これは、削除前のバージョンから非推奨将来XHTMLの要素を試し進化で、ブラウザは、今日は非常によく、それをサポートしていないので、他の変更の数は、現在「プライムタイムの準備ができていない」であり、「移行」の要素古いブラウザはもはや存在しないとの互換性以前のバージョンに含まれています。

ちょうどあなたがHTMLやXHTMLを使用するかどうかを決定する際に、どちらか一方を選択し、これらのいずれかのために設計された構文として常にそれに固執することを確認すると、ブラウザが通常であっても、検証エラーが発生しますWebページの解釈にはかなり不注意にもbastardized半々ページを混乱します。 無知なWeb開発XHTML構文はDOCTYPE HTMLの、またはその逆のページで使用されたときに確かな証拠があるが、そのようなことは、インターネット上で、これらの日横行しています。 多くの場合、人々は、両方の品種の混合物を含むWebページのフランケンシュタインの怪物に合わせてコードのスニペットを貼り付けます。 このようなバナー広告やアフィリエイトトラッキングピクセルとして外部から与えられたコードのビットは、一般的な犯罪者です。 それらのいずれかを使用するHTML品種の正しい構文を使用して変換することを確認し、「ネジ」と言います そのメーカー、あなたは需要が彼らのコードを変更しない契約条項を保持する上で主張すれば。

HTML 5

HTML 5は、あまりにもハードすでに、実際には完全にこれを書いているとして承認されたが、DOCTYPEを持っていません。 新しいDOCTYPEがある:彼らは確かに最大心拍数ベース「それ単純な、愚かにしてください」でした。

<! DOCTYPE html>

現在のバージョンへの番号がないので、それらのどれも非常にこの短いとシンプルなかったので、彼らは未来を識別するための基準につもりか私にはわからないはず今までに、この文字列は、(特に、以前のHTMLがのdoctypeています)、一度そこにHTML 5.1または6.0を示すために、どこかがあるようには思えません。

ISO 15 445

ISO標準のHTMLは、標準化団体の「重み」の利益を有するもあり、本当にW3コンソーシアムよりもはるかに多くの影響を及ぼし、それがそのDOCTYPEとしてあります。

<DOCTYPE HTML PUBLIC "! ISO / IEC 15445:2000 / / DTD HTML / / EN>

W3Cバリデータは今それを認めます。 仕様は、 W3CのHTML 4.0厳密に似ています。 この参照してください。 ユーザーガイドを

偽のdoctype

文書型が挿入または交換することにより、気をつけてWYSIWYGエディタを 、それらの多くは、(あなたがあなたの手を置いたものを持つことができ、他の交換)すべてのドキュメントの自分の好きなのDOCTYPE置くと、これは多くの場合、説明しているではありません正確にHTMLエディタを生成します。 実際には、いくつかの文書型エディタでもDOCTYPE宣言のための適切な構文に従うと、すべての文書を検証することを拒否するためにバリデータを決定していない生成しました。

リンク

妥当性

リンター/ルダム

  • リンク交換サイトインスペクタ ネットメカニック -構文と無料サイトリンクHTMLdumneavoastră.Doctorチェックする非常に便利なサイト HTMLTidyは – 、HTMLをクリーンアップし、エラーレポート、およびページのためのDOCTYPEが何であるかを示唆しています。 (多くのプラットフォームで利用可能なコマンドラインユーティリティ;オープンソース) のTidy – HTMLTidy Windowsユーザーインターフェイス。
  • CSEの検証(命名されました) 元々ていなくてもバリが、リンター- 。 さて、実際に本物のバリデータが組み込まれていますが、オプションで追加の機能として、その彼の名前ではなく、完全に間違っていると、今は少々誤解を招くかもしれません。

他のユーティリティ

コメントなど

No Comments

    Leave a reply