iTheme でXML宣言してみる

XML宣言をするべきか?ということに対しては、いろんな方がそれぞれの考え方を持っているようですが、XHTML文書にはXML宣言を記述する事が強く奨励されており、UTF-8もしくはUTF-16以外のエンコーディングの場合においては必須であるといわれています。エンコーディングを UTF-8 もしくは UTF-16 とし、HTTP ヘッダの Content-Type リクエストヘッダ で charset にエンコーディングを指定すれば省略してもいいということになりますが、省略した場合、Another HTML-lint gatewayでチェックした際にエラー項目の一番最初に出てくるのでちょっと嫌だったりします。ちなみにW3CのMarkup Validation Serviceでのチェックでは特に指摘されません。XHTML文書を書く場合、エンコーディングをUTF-8にしておけば問題ないようなので、あとはどこまでこだわるのか?ってことかもしれません。

このXML宣言っていうのがコーディングする上で一番ややこしかったりします。FireFoxやOperaではXML宣言をすることによる弊害はないのですが、IE6.0の場合、文書型宣言(<!DOCTYPE〜>)の前に何か文字が入ってしまうと後方互換モードになってしまい、いきなり表示が崩れたりします。これはIE6.0のバグで、IE7.0では改善されているそうです。text-align、文字サイズ、ボックスにおけるpaddingとmarginの解釈などが後方互換モードではかなり解釈が違うので、現在使用しているiThemeもXML宣言したとたんIE6.0で酷い崩れ方をします。

あまりの酷さにXML宣言をするのは諦めようかと思うくらいですが修正を入れてみました。
style.css
bodyにtext-align: center;を追加
#wrapperにtext-align: left;を追加
dbx.css
* html .dbx-handleのwidth指定を削除
これでIE6.0でも他のブラウザと同じように表示されるようになります。

Dockを使用する場合、スタイルシートを修正するだけでは、IE6.0でアイコンの表示がミニミニになってしまいます。これを修正するにはJavascriptの方を書き換える必要がありそうで手をつけることが出来ませんでした。XML宣言をとるか、Dockをとるかってなるんですが、回避方法を発見。

BirDesignさんのIE6でのXML宣言の問題と回避方法というエントリーの中でIE6以外でのみXML宣言をするPHPコードというのが紹介されています。

<?php  $ua = $_SERVER['HTTP_USER_AGENT'];
    if (!(ereg("Windows",$ua) && ereg("MSIE",$ua)) || ereg("MSIE 7",$ua)) {
       echo '<?xml version="1.0" encoding="'
. get_settings('blog_charset') .'"?>' . "\n";  }  ?>

これを文書型宣言(<!DOCTYPE〜>)の前に記述してやることで、IE6.0以外でのXML宣言が可能となります。※phpでの記述となります。

参考サイト
plucore.log:xml 宣言を利用すべきか否か
Lucky bag::blog::xml宣言について

Tags: , , , ,

Leave a Reply

  • 株価が9000円をあっさり割ってる。なんかえらいことになってきたな~ 1 day ago
  • オージーの81円台は拾い損ねたけど、82円台拾って今日は復活 3 weeks ago
  • More updates...

Recent Posts

フィード向け Google AdSense が開始!?

フィード向け Google AdSense が開始!?

「フィード向け AdSense」では、通常の「コンテンツ向け AdSense」と同様に、コンテンツターゲット広告が配信される、ということで早速試して見ることにした。Googleリーダーを使ってみるとこんな感じになるらしい。...more

Googlemaps ストリートビュー日本版

Googlemaps ストリートビュー日本版

ようやく日本版のGooglemapsストリートビューが登場ということで、仕事さぼってグリグリいじってみました。とりあえず、東京、京都、大阪、神戸など主要都市だけと限定的だけど、かなり見ごたえありです。...more

仕事を効率よく進めるために

仕事を効率よく進めるために

どうも昔から片付け物が苦手。かといって、散らかっているともっとやる気がなくなったりする。そんな私が気をつけていることといえば、PCのデスクトップ上を極力きれいに保つこと。...more

色覚異常の人にとってどう見えているかを検証してみる

色覚異常の人にとってどう見えているかを検証してみる

COLOURloversですごく興味深い内容の『As Seen By The Color Blind』がエントリーされています。色覚異常を持つ人にとって色相がどう変化するかを検証しまとめてあります。...more

Googleの仮想世界サービス Liverly

Googleの仮想世界サービス Liverly

とうとうGoogleがLiverlyを立ち上げて仮想世界に参入!という情報が各サイトで取り上げられてます。今まで、仮想世界=セカンドライフだったのですが、Googleが参加してきたことで今後どう変わっていくのか楽しみです。...more

Last FM

Analytics


Web Design Blogs - Blog Catalog Blog Directory