HTML・CSSテックラボ

携帯サイトのDOCTYPEについて

docomo、au、softbankの携帯端末に対応したXHTMLを作る際、DOCTYPEの宣言の違いに注意する必要があります。

現在、キャリアごとに推奨されているDOCTYPEの宣言が異なります。

docomo

例:iモード対応XHTML 1.0用のDOCTYPE

<!DOCTYPE html PUBLIC "-//i-mode group (ja)//DTD XHTML i-XHTML(Locale/Ver.=ja/1.0) 1.0//EN" "i-xhtml_4ja_10.dtd">
au
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.0//EN" "http://www.w3.org/TR/xhtml-basic/xhtml-basic10.dtd">

※参考:XHTML Basicの基本

softbank
<!DOCTYPE html PUBLIC "-//J-PHONE//DTD XHTML Basic 1.0 Plus//EN" "xhtml-basic10-plus.dtd">

※参考:XHTMLとCSSによる携帯サイト制作

ただし、現状の携帯端末の表現能力ではDOCTYPEによる表示の差異はほとんどないので、XHTML Mobile Profile、もしくはXHTML 1.0 Transitionalに準拠したDOCTYPEを3キャリア共通で宣言しても実用上は問題ありません。

XHTML Mobile Profile、XHTML 1.0 Transitionalに準拠したDOCTYPEの宣言は下記のとおりです。

XHTML Mobile Profile 1.0
<?xml version="1.0" encoding="Shift_JIS"?>
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd" >
<html xmlns="http://www.w3.org/1999/xhtml">
XHTML 1.0 Transitional
<?xml version="1.0" encoding="Shift_JIS"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="ja" xml:lang="ja">

docomoのXHTML対応は注意が必要です。docomoの場合はCSSの記述はインラインのみが対応となっているので、外部CSSが使えません。

参考までに、3キャリア対応のXHTMLテンプレートは次の通りです。

<?xml version="1.0" encoding="Shift_JIS"?>
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=Shift_JIS" />
</head>
<body>
</body>
</html>

XHTML Mobile Profile 1.0がXHTML Basic1.1に統合されましたが、当分は各キャリアの対応待ちとになるので、しばらくは上記のような方法で問題ないと思います。

参考

関連記事