2017-07-11 9 views
0

元々2005年に書かれたPHPフレームワークがあるため、デフォルトのDOCTYPEはHTML 4.01 Transitionalです。この一方でHTML 5はHTML 4.01 Transitionalのスーパーセットですか?

を上書きすることができ、ほとんどのプロジェクト(でも最近のもの)は、デフォルトを変更していない、ので、ほとんどのプロジェクトは、フレームワークによって生成されたすべてのHTMLを渡すように設計されているHTML 4.

として文書を提供しますW3C HTML 4 Validator、およびほとんどのプロジェクトでは、企業の要件であるため有効なHTMLを生成します(ただし、必要な場合は例外が許可されます)。たとえば、<canvas>などのHTML要素を使用すると、正しく処理する)。

私の質問:単にフレームワークを最新のDOCTYPEに切り替えると、HTML 4のマークアップがHTML 5として正しく検証されるのでしょうか、それともコードを変更する必要がありますか?

二次質問:レンダリングまたはブラウザのサポートはこの変更の影響を受けますか?

答えて

1

私がこのwikipediaの記事を正しく読んでいる場合、すべてのブラウザはQuirksモードからStandardsモードに移行します。これは、ブラウザのレンダリングが影響を受ける可能性があることを意味します。

私は検証についてはわかりませんが、レンダリングは影響を受けるため、検証が行われることを前提とした安全な賭けです。

興味深い読書:

+0

良い点!システム識別子( '<!DOCTYPE HTML PUBLIC" - // W3C // DTD HTML 4.01 Transitional // EN "" http://www.w3.org/TR/html4/loose.dtd ">')、 https://en.wikipedia.org/wiki/Quirks_mode#Comparison_of_document_typesのテーブルからは、ほぼすべてのブラウザでページが「ほぼ標準モード」になっているように見えます。これは、わずかなレンダリングの変更をもたらすかもしれませんが、QuirkからStandardモードに変わったかのようには大きくはありません。 – HappyDog

+0

Firefoxの[ページ情報]ボックスには、ページが「標準の準拠モード」であると言われています.Wikipediaの記事と矛盾しています(Firefoxは標準とほとんどの標準を区別しない限り)。 – HappyDog

+1

多くの場合、標準モードとほぼ標準モードは区別されません。しかし、どちらが使われているのかを簡単に知ることができます。これをあなたのhtmlの '

'に追加してください。灰色のボックスの下に黄色の縞模様が表示されている場合、標準モードが使用されています。黄色のストライプがない場合、ほとんどの標準モードが使用されています。 – Alohci

関連する問題