フリースタイルな携帯言語変換:マーキー
携帯コンテンツを作る際、マークアップ言語は何を使ったらよいのか?ラウンドアバウトでは次のように考えています。
- XHTMLなら何でもOK
- CSS利用可能
各キャリア向けXHTMLは互いに細かいところで違いが多くあるが、体系としてはほとんど一緒なので、ラウンドアバウトは何でも受け入れられます。
「何でも」とは、「iモード向けでも」「au向けでも」と、何か一種類の統一されたマークアップなら何でもということに限りません。他のXHTMLが混在していても、さらにはXHTMLの途中にCHTMLの記述が混ざっていてもOKです。こんなルーズな感覚が実際の現場にとっては負担がないのです。
キャリアごとのXHTMLやCSSプロパティの記述方法の違いで、複雑になりがちなものの一つに、マーキーの書き方があります。
●3G向け
マーキーするテキスト
●2G向け
iモードXHTMLではmarqueeタグが使えずdivかspan要素にしかdisplayセレクタが書けないという仕様の違いや外部CSSが使えない事情を踏まえた末、3G向けにはこのように書く例が多く見られます。しかし2Gではこの記述は無効で全キャリアともmarqueeを使います。つまりワンソースで全キャリア・全世代対応できるマーキーの記述方法はありません。こうした小さな表示一つにもノウハウがあるということが、携帯コンテンツ制作には細かい専門知識が必要だとされるゆえんです。
一方、ラウンドアバウトは非対応のタグを書いてもよいので、ラウンドアバウトを使った場合はこのように書けます。
●HTML
●画像(docomo N905i)
marqueeはXHTMLではそもそもが独自要素でW3Cにもありませんが、実際は多くのブラウザが対応し広く知られたタグでもあります。事実上使うことのできるmarqueeタグを書いてもよいではないかというのがラウンドアバウトの考えです。
marqueeでも書けますが、span+「display: -wap-marquee」で書いても構いません。同じページの中に二つの書き方が混在していてもよいです。サイトを作る際ソースコードの情報源になるものは様々です。XHTMLの仕様に則って書く場合もあれば、過去のプロジェクトからCHTMLのソースコードを持ってくることだってあります。コンテンツの開発や保守に関わる人が途中で変わり、HTMLの知識を持つ人から持たない人(またはその逆)に引き継がれれば、HTMLの書き方も当然変わるでしょう。「この方法でなければいけない」「こっちの書き方に変えなければいけない」といった厳密なルールを適用しなくてもサイトが作ることができ、維持できる環境を作り出すのがラウンドアバウトなのです。