2016-04-18 12 views
-1

!DOCTYPE htmlと私は変なバグがあります。!DOCTYPE html破棄ページ

私はHTML5 Doctypeを使用しようとしているとき、私のページは奇妙に見えます。すべてのスクリプトは正しく閉じられていないように見えます。

しかし、!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"に変更すると、すべてがうまく見えます。

私はページ構造に何が問題なのか、それがHTML5でのみ起こったのか理解できません。

+1

HTMLバリデーターでページを実行しましたか? – j08691

+0

あなたはIEを使用していますか?別のブラウザで試してみましたか? – Styl

+0

@ j08691いいえ、私は現時点では私の地元にいるからではありません。 – Oleg

答えて

0

皆さん、ありがとうございます!

私はそれを解決する方法を見つけました。私の場合、エラーは1つの拡張であり、オブザーバで$dom->saveXML()メソッドを使用しました。このメソッドをレンダリングする前に、DOMを解析し、HTML出力を削除/置き換えました。

2

HTML5は、多くのHTML4要素を完全に削除して再編集しました(XHTML 1.0はこれに基づいています)。ウェブサイトが主にXHTML 1.0でコーディングされている場合、HTML5に切り替えるだけで、何かが壊れないと仮定することはできません。

W3CのHTMLバリデーターを使って変換されたdoctypeコードをhttps://validator.w3.orgで実行し、生成されたエラーと警告を調べるのが最善の方法です。これは、あなたが望むように物事がうまくいかない理由のアイデアを与えるはずです。

+0

それはさらに悪いです:それはXHTMLです:) –

+0

私は彼が反対を記述すると思います。 – Styl

+1

HTML5は従来のサイトと後方互換性があるように設計されています.HTML 4の要素のセマンティクスは変更されていますが、厳密なdoctypeから別の厳密なdoctypeに切り替えるだけで実装は突然異なる動作をしません。 – BoltClock