IE6に困ったら

XHTMLで作成した文書がIE6で閲覧時、レイアウトが崩れることがあります。

XML宣言を行うとIEでは、互換モードとなります。このため多くのXHTML文書ではXML宣言が行われていないのが現状です。

先日、面白いものを見つけました。

phpの場合に以下のように記入すると、ユーザーエージェントを判断しIE6以外でXML宣言を記入することが出来ます。

<?php
$ua = $_SERVER['HTTP_USER_AGENT'];
if ((ereg("Windows",$ua) > 0) && (ereg("MSIE",$ua) > 0)) {
if (ereg("MSIE 6.",$ua) > 0) {
echo '';
}
} else {
echo '<?xml version="1.0" encoding="Shift_JIS"?>'."\n";
}
?>

エンコードは書き換えてください。

Another HTML-lintでも100点を取ったまま、標準モードもOK!

Posted