M.C.P.C.

―むり・くり―プラスコミュニケーション(更新終了)


| トップページ |

2011年3月11日 18:34

SSIで、同じXHTML文書をIE6用、IE7~8用、HTML5対応ブラウザ用に吐き出し分ける

このエントリーをはてなブックマークに追加 mixiチェック

XHTML1.0 Strict文書があったとして、WindowsのIE6ではXML宣言なし、IE7~8ではXML宣言あり、それ以外だったらHTML5(XHTML5でないことに注意)とみなされるような出力がされるSSI記述を用意してみました。

SSIで差し込んで使えるようにしてありますので、使うときには<!--#include virtual="head.inc" -->などして使ってくださいね。

Filename: head.inc

<!--#if expr="$HTTP_USER_AGENT == /MSIE [7-8].0/ "
--><?xml version="1.0" encoding="UTF-8"?>
<!--#endif
--><!--#if expr="$HTTP_USER_AGENT == /MSIE [6-8].0/ "
--><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<!--#else
--><!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
  <head>
    <meta charset="utf-8" />
<!--#endif -->

同様にSSIのIF文でbody要素の中のdiv要素をheader要素やsection要素に置き換えていけるのだけれども、素直にhtml5.js使えっていう話ではある。

HTML5 enabling script [remysharp.com]

投稿 大野 義貴 [XHTML/XHTML5] | |

トラックバック(0)

トラックバックURL: http://blog.dtpwiki.jp/MTOS/mt-tb.cgi/3522

コメントする