ホーム > タグ > xhtml
xhtml
国内主要3キャリア対応のxhtmlモバイル向けページを作成
この記事は「国内主要3キャリア対応のxhtmlモバイル向けページを作成」に引っ越しました。
i モードHTMLとiモードXHTMLを切り替える
- 2009年6月4日 6:08 PM
- Mobile
iモードHTMLとiモードXHTMLを正しく切り替える方法より引用。
『ちなみに、ドコモ向け端末において、XHTMLモード(iモードXHTML)で表示させる場合、
拡張子は「xhtml」でなければならないという解説をしているところもありますが、それは間違いです。
Webサーバーにおいては拡張子はそれほど重要ではなく、
問題はその拡張子がどのようなコンテンツMIMEタイプであり、どんなHTTPヘッダが出力されるか
ということのほうが重要です。上記例(htaccess)では、「.html」という拡張子においてはHTTPヘッダ
は「application/xhtml+xml」にせよ、という明示なので、この設定がなされていれば、Webサーバーは拡張子htmlで、「application/xhtml+xml」というHTTPヘッダを出力するようになるので、
ドコモの機種はXHTMLモードに切り替わります。』
3キャリア対応のモバイル向けサイトを作るにあたって
- 5:47 PM
- Mobile
自分のような初心者には丁度よくまとまっている blog エントリがあったので、これを元に自分用にさらにまとめ、整理してメモ。
ちょっと詳しいモバイルサイトの作り方
お世話になりました。ありがとうございました。
続きを読む
モバイル端末におけるXHTMLについて
- 5:21 PM
- Mobile
携帯端末におけるXHTML仕様
XHTMLの仕様はW3Cによって標準化されているが、携帯端末の世界ではキャリアごとに異なっていて統一されていない。
DoCoMo
XHTML Mobile Profileをベースにしてiモード対応HTMLとの互換性を意識して策定。
au
XHTML Basicをベースにして、独自の拡張機能を追加したものを策定。
SoftBank
XHTML Mobile Profileをベースに、独自の拡張機能を追加したものを策定。
上記のように、携帯の世界ではW3CによるXHTML Basicと、WAPフォーラム(現在のOMA)によるXHTML Mobile Profileが主な仕様となっているのが現状。
各キャリアにおけるXTMLへの対応状況
DoCoMo
FOMA機種(2002年頃発売の2001/2002/2101Vは除く)
au
WAP2.0ブラウザ搭載機種(2002年以降発売)
SoftBank
W型、3GC型(2003年以降発売)
らしい。
XHTMLでモバイルサイトを制作する際の注意とtips
- 5:13 PM
- Mobile
とくに、PHP での開発において、ざっとメモ。
(PHP×携帯サイト デベロッパーズバイブルを参考に)
1. XML 宣言が必要
<?xml version=”1.0″ encoding=”Shift_JIS” ?>
2. キャリア、端末によって DOCTYPE 宣言を書き換える必要がある
Docomo / iモードXHTML1.0
<!DOCTYPE html PUBLIC “-//i-mode group (ja)//DTD XHTML i-XHTML(Locale/Ver.=ja/1.0) 1.0//EN” “i-xhtml_4ja_10.dtd”>Docomo / iモードXHTML1.1
<!DOCTYPE html PUBLIC “-//i-mode group (ja)//DTD XHTML i-XHTML(Locale/Ver.=ja/1.1) 1.0//EN” “i-xhtml_4ja_10.dtd”>Docomo / iモードXHTML2.0
<!DOCTYPE html PUBLIC “-//i-mode group (ja)//DTD XHTML i-XHTML(Locale/Ver.=ja/2.0) 1.0//EN” “i-xhtml_4ja_10.dtd”>Docomo / iモードXHTML2.1
<!DOCTYPE html PUBLIC “-//i-mode group (ja)//DTD XHTML i-XHTML(Locale/Ver.=ja/2.1) 1.0//EN” “i-xhtml_4ja_10.dtd”>Docomo / iモードXHTML2.2
<!DOCTYPE html PUBLIC “-//i-mode group (ja)//DTD XHTML i-XHTML(Locale/Ver.=ja/2.2) 1.0//EN” “i-xhtml_4ja_10.dtd”>Docomo / iモードXHTML2.3
<!DOCTYPE html PUBLIC “-//i-mode group (ja)//DTD XHTML i-XHTML(Locale/Ver.=ja/2.3) 1.0//EN” “i-xhtml_4ja_10.dtd”>au
<!DOCTYPE html PUBLIC “-//OPENWAVE//DTD XHTML 1.0//EN” “http://www.openwave.com/DTD/xhtml-basic.dtd”>SoftBank
<!DOCTYPE html PUBLIC “-//JPHONE//DTD XHTML Basic 1.0 plus//EN” “xhtml-basic10-plus.dtd”>
3. Content-Type の書き換えも必要
通常(デフォルト)では、Content-Type は text/html になる。
XHTML を使用する場合はこれを application/xhtml+xml としないといけない。
対応する部分は以下の二箇所。
- meta タグによる Content-Type の指定
- HTTP レスポンスの Content-Type フィールドにおける指定
具体的には、
meta タグでは以下を記述
HTTP レスポンスヘッダーに以下のような Content-Type を指定(これは PHP の場合)
header(‘Content-Type: application/xhtml+xml;’);
この PHP の header 関数は、全ての出力の「前」に呼び出される必要がある。
4. mb_output_handler に注意(文字化け)
PHP での開発において mb_output_handler(出力時の文字コードの変換を行ってくれる関数)を使うことが出来ない。
HTTP レスポンスヘッダーの Content-Type に application/xhtml+xml が記述されているときは、この関数は機能しないので使うことが出来ないので注意。(ようするに、XHTML を使おうとするときは、この関数は使えないということ)
5. mb_output_handler を利用せずに文字コード変換
以下のスクリプトを使用して、内部文字コードを出力文字コードに一括変換する。
詳しい実例は初めてのXHTMLによるモバイル向けページの作成を参照。
*この際、mb_output_handler を無効にしておくこと。
(php.ini の mbstring.http_output = pass にしておく)
*プログラム内で一時的に mb_output_handler を無効にするには
ini_set(‘mbstring.http_output’, ‘pass’);
// 出力バッファリングを有効に
ob_start();
// バッファにためた出力データを取得する
$str = ob_get_contents();
// 文字コードを出力文字コードに変換する
$output_str = mb_convert_encoding($str, 'SJIS-win', mb_internal_encoding());
// バッファリングをクリア
ob_end_clean();
// 内容を出力する
echo $output_str;
ドコモ向け端末におけるiモードXHTMLについて
- 2009年4月25日 11:12 AM
- Mobile
モバイルユーザビリティ・デザイン Web制作者が身につけておくべき新・100の法則。 によると、iモードXTML で作成したページをドコモ向け端末で表示させるには、拡張子が「.xthml」でないといけないらしい。(au と SoftBank では .html)
でも、以下のような記事を見つけた。拡張子にとくに問題があるわけではないみたい。
ちなみに、ドコモ向け端末において、XHTMLモード(iモードXHTML)で表示させる場合、
拡張子は「xhtml」でなければならないという解説をしているところもありますが、それは間違いです。
Webサーバーにおいては拡張子はそれほど重要ではなく、
問題はその拡張子がどのようなコンテンツMIMEタイプであり、どんなHTTPヘッダが出力されるか
ということのほうが重要です。上記例(htaccess)では、「.html」という拡張子においてはHTTPヘッダ
は「application/xhtml+xml」にせよ、という明示なので、この設定がなされていれば、Webサーバーは拡張子htmlで、「application/xhtml+xml」というHTTPヘッダを出力するようになるので、
ドコモの機種はXHTMLモードに切り替わります。
ドコモ向け携帯端末において
iモードXHTMLを表示させるのに必要なポイントは
拡張子云々ではなくて、以下の二点らしい。
- DOCTYPE宣言が正しく行われていること。
- コンテンツのMIMEタイプが「application/xhtml+xml」であること。
(かつサーバー側においても正しいHTTPヘッダが出力されている必要がある)
XHTMLによるモバイル向けページの作成
PHP×携帯サイト デベロッパーズバイブルを参考書に、初めてのXHTMLによるモバイル向けページの作成について。(PEARライブラリの「Net_UserAgent_Mobile」を使用)
いろいろつまづいたのでメモ。(文字化けで苦しんだ)
続きを読む
XHMLの正しいマークアップ
文書構造を表現するXHTMLタグを大まかに分類し、分類したタグをXHTMLの“要素”として、1つずつ紹介していきます。
これらの要素類はXHTMLの骨格(枠)となる部分を形成していくために使われる、XHTMLタグの記述(=マークアップ)を行ううえで基礎となる要素類です。
DOMでの参照例も書いてくれてる。
リンクを別ウィンドウで開く
- 2009年1月9日 7:31 PM
- Web制作
そういえば、リンク先を別ウィンドウで開く際によく使われる「target」指定は、標準では非推奨となっているからよろしくないっていうような記事を読んだなぁと、ふと思い出して調べてみました。ざっとですが。
続きを読む
各DTDにおけるDOCTYPE宣言
- 7:00 PM
- Web制作
HTML 4.01 Strict DTD (厳密な)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
HTML 4.01 Transitional DTD (移行期)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
HTML 4.01 Frameset DTD (フレームセット用)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
XHTML 1.0 Strict DTD
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
XHTML 1.0 Transitional DTD
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
XHTML 1.0 Frameset DTD
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
XHTML 1.1 Strict DTD
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
XHTML Basic 1.0 DTD
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.0//EN" "http://www.w3.org/TR/xhtml-basic/xhtml-basic10.dtd">
ホーム > タグ > xhtml
- 検索
- フィード