1. ホーム
  2. html

[解決済み] ブラウザが "quirks "モードかどうかを見分けるには?

2022-06-21 22:02:19

質問

比較的厳密なdoctypeとHTMLマークアップを持つページがあり、かなり準拠に近いのですが、おそらくいくつかの愚かな方法で、おそらくあなたのコントロール外のユーザーのコンテンツのために失敗しているとしましょう... あなたがコンテンツ管理システムまたはコンテンツ管理システム用のテーマで働いているとすると、いくつかの基本構造を制御していくつかのjavascriptが必要ですが、ページに入る他のすべてに責任があるわけではないのです。

ブラウザが、より標準に準拠したエンジンを使用するのではなく、quirks"モードに入ることを決定したとき、どのようにして知ることができますか(または、何が決定するでしょうか)?

IE、Chrome、Safari、および Firefox はもちろんすべて異なる処理を行うので、主要なブラウザごとに答えを探しています。 1 つのシングル エラーで強制するのに十分なのか、それとも多少の余裕があるのでしょうか?

どのように解決するのですか?

FirefoxとOpera では、ページ情報を確認することで、ブラウザが "quirks mode" になっているかどうかを判断することができます。

使用方法 document.compatMode を使用すると、ほとんどのブラウザでモードがわかります。

クローム、サファリ、IE の場合、アドレスバーでこのjavascriptを実行してください。

 javascript:window.alert('You are in ' + (document.compatMode==='CSS1Compat'?'Standards':'Quirks') + ' mode.')

(を再入力する必要があることに注意してください。 javascript: の部分は、最近のセキュリティ変更により、アドレスバーに貼り付けた後、再入力する必要があることに注意してください)