最近発売されているドコモの機種(FOMA)のブラウザにはたいていiモードHTMLとiモードXHTMLの両方に対応したモードが搭載されています。904iでは、ドコモの技術情報の端末スペック表を見ると、iモードHTMLはバージョン7.0、iモードXHTMLは2.1に対応していることが分かります。携帯に対応したHTMLもバージョンアップを繰り返すためです。このi-HTMLとi-XHTMLの違いは、多くはHTMLタグで指定できる属性やCSSの対応状況になりますが、簡単に言ってしまえば、i-XHTMLのほうがより豊かな表現が可能になっていると解釈しても間違いではないでしょう。多くの方が勘違いされているのは、ドコモの機種が割と新しい機種、つまりXHTMLに対応した機種であれば、HTMLは自動的にXHTMLモードになるということ。普通にHTML内に書けばそれに対応している機種なら表示できるということ。結論から言ってしまえば、これはどちらも間違いです。以下のような点に注意しなければなりません。・DOCTYPE宣言が正しく行われていること。・コンテンツのMIMEタイプが「application/xhtml+xml」であること。Content="application/xhtml+xml">が指定されていて、かつサーバー側においても正しいHTTPヘッダが出力されている必要があります。.html」のいう一文を追加します。このような条件がそろって初めて、ドコモの機種はi-XHTMLモードでの表示が可能になります。strictな設定が必要だということですね。拡張子は「xhtml」でなければならないという解説をしているところもありますが、それは間違いです。問題はその拡張子がどのようなコンテンツMIMEタイプであり、どんなHTTPヘッダが出力されるかということのほうが重要です。上記例(htaccess)では、「.html」という拡張子においてはHTTPヘッダは「application/xhtml+xml」にせよ、という明示なので、この設定がなされていれば、Webサーバーは拡張子htmlで、「application/xhtml+xml」というHTTPヘッダを出力するようになるので、ドコモの機種はXHTMLモードに切り替わります。機種によっては「.xhtml」を読まない機種もありますので、私はこのような指定方法を推奨します。このXHTMLモードに切り替えると以下のような表現が可能になります。DIVタグでbackgroundプロパティを指定したいというケース。以下の2種類の方法があります。・tableタグを用いる。(正確にはtdタグのbgcolor要素を使用する)・DIVタグを用いる。(正確にはstyleでインライン指定する。)ただ、tdタグでの背景色指定はi-HTMLバージョンが6.0以上、i-XHTMLで2.0以上という条件に対し、DIVタグのstyle指定ならi-XHTML1.0以上という条件ですから、DIVタグで指定する方法のほうが、より多くの端末を内包することになります。従って、上記のようなケースではDIVタグを用いるほうが正解ですが、これも先ほど説明したようにブラウザがi-XHTMLモードになるようにHTML側で正しく設定していた場合の話です。以下のサンプルを参考によく理解しておきましょう。|プロフィールAuthor:shibaフリーのマークアップエンジニア。PC及び携帯サイト制作のほか、デコメ、SEO、LPO、アフィリエイトなど、WEBサイト全般の業務に携わる。TypeなどのCMSテンプレートカスタマイズ、PHPプログラミング等を経験。3年ほど前から携帯サイト制作にシフト。古くから培ってきたコーディング技術とケータイ世代に生きた若さという空回りな強みをあわせ持つ。HTML/CSSリファレンスサイトを別に運営。HTMLタグボード:http://www.dspt.net/はじめての方へ当ブログは以下のような方が対象です。初心者にはちょっと難しい内容かもしれません。2008/10)お問い合わせブログ全般に関するご質問などはこちらからお問い合わせ下さい。(08/04)お久しぶりです。