IE8のCSS表示
IE8のCSS表示基準がムチャクチャで理解できません・・・。
先日、久しぶりにCSSを設定する機会がありまして、こちょこちょと作業していると不思議な差異を感じるのです。何度もパソコン画面を確かめて見比べてを繰り返していると、ようやく、なんとなく理解してきました。
同じCSS設定でVistaパソコンから見るローカルとxreaサーバー設置のPukiWikiの表示が違うのだ。ところがXpパソコンからだとVistaと逆のCSS反映表示に見える。そしてその違いは旧IE7以前とFirefox互換っぽい表示ということです。
そしてこれは何かあると思って調べてみると今更ながら知ったのですが、IE8は独自CSS路線を改めてCSSの標準規格に準拠した*1仕様になっていたのです。標準(通常)表示の場合アドレスバーの右側に「互換表示」ボタンが追加されています。なんかこのボタンが横にあると準拠してないサイト的な印象ですよね
では何故パソコンによって表示が違うのか色々確認してみると・・・
OS | 差異のあるもの | Xpパソコンlocalhost | taru.s223.xrea.com |
Vista | 表示状態 | IE8標準 | IE7互換 |
旧互換表示ボタン | 有り | 無し | |
互換表示設定 | 「マイクロソフトからの更新されたWebサイト一覧を含める」にチェックあり 「互換表示でイントラネット サイトを表示する」にチェックあり | ||
Xp | 表示状態 | IE7互換 | IE8標準 |
旧互換表示ボタン | 無し | 有り | |
互換表示設定 | 「互換表示でイントラネット サイトを表示する」にチェックあり |
と、なっていてしかも嫌がらせに近い状態だった。
- 利用環境によって初期設定が違う?(私は今まで知らなかったのでたぶんいじってないと思う)
- ツール-互換表示設定:にてチェックされていて、旧互換表示に強制的に表示されているWebサイトを見ている場合、旧互換表示ボタンが何も異常ありませんが如く表示されていないのです。普通は下位互換なんだから「通常表示サイトに登録する」的な機能があっても良いぐらいなのにと。
- こちらのサイトも勝手に旧互換表示しろ指定されたWebサイト一覧に含められているらしく、「マイクロソフトからの更新されたWebサイト一覧を含める」にチェックありの場合、与り知らないところで強制的に下位互換の表示変えられていたようだ。しかも旧互換表示していますよボタンの表示が無いからまるでIE7以前の設定(指定)にしてるくせに表示が崩れまくってるのでは?みたいな印象のサイトです。
- 互換設定で「互換表示でイントラネット サイトを表示する」にチェックありにしていてもローカルではなくLAN接続のパソコンを参照する場合、範囲から外れて標準表示となります。まさにゴミ設定ですね(わざわざ用意する設定ではない、本格的に作業してるところなら全く使われない機能)。
- ちなみにこのサイトはどう登録されているか→「<domain>xrea.com</domain>」何もかも終わってますねorz。
res://iecompat.dll/iecompatdata.xml
まぁ、独自CSS路線を改めてCSSの標準規格に準拠しようとする姿勢だけでも評価できるところでしょか。
IE7の評判が最低なことも含め考えると今後IE8や他ブラウザーが多くなってくると思います。そしてIE7互換のCSSを設定しているサイトは<meta>タグやWebサーバーの設定で互換表示モードへの対応を行えます。この事からありえない設定(IE7以前の仕様いに対応したサイトだけを優先してIE8や他のブラウザ設定を無視した設定)のされた「互換表示設定」は全て解除するべき、されてるべきなのでしょう。