- 締切済み
同じページ内で携帯とPCの表示を変えたい。
こんにちは、 えっとPCと携帯で表示させるページを振り返るのはよくあるのですが、そうではなくて。 同じページ内でPC用には大きな画像、 携帯用には小さい画像を表示、もしくはなにも表示しないようにしたいのですが。 出来ればHTMLで PCには読めるけど携帯では読めないタグとかを うまく使って実現できないでしょうか?
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- Jst0Op9r
- ベストアンサー率100% (2/2)
携帯ではJavaScriptが使えないので、 <script type="text/javascript"> <!-- document.write('PC用ページの内容'); //--> </script> <noscript> 携帯用ページの内容 </noscript> とするのはどうでしょう。 JavaScriptの使えないブラウザで見ると携帯用のページが表示されてしまいますが。
- steel_gray
- ベストアンサー率66% (1052/1578)
HTMLには <img src="hantei.cgi"> みたいに書いて、 hantei.cgi で機種を判定して適切な画像を返す。 http://www.yumemaboroshi.net/cgi4325/ ちょっと探したけど、これしか見つからなかった。もっと簡素で無料のものもあったかも。 >PCには読めるけど携帯では読めないタグ 携帯がいつ、どの機種がいつのまにか読めるようになるかわからないので、こういう方法は止めておいたほうがいいかも。
何処まで対応するのでしょうかね。 PCならIE6以降とfirefox1.5以降とか imodeならIHTML5.0以降の機種とか softbankならXHTML対応機種のみとか それを決めないと調べるにも大変ですね。 それは別として試したことがありませんし、たぶんsoftbankの3GC2には通用しないかもしれませんが、 <iframe><--これは古いPC用ブラウザでは未対応の物があるらしいです。 <frameset><frame><noframes> こっちも少なからず可能性はあると思いますが、PCでもブラウザの設定が関係するので少々厄介かもしれません。 <script><noscript> これはPCはHTMLファイルでも良いものが多いと思いましたが、携帯ではflashやアプリのみとか限定されているのではないかな?(詳細未確認) <object> XHTMLでEzweb又はsoftbankでファイルサイズを考えないならCSSのmedia属性とdisplayでなんとかなりませんかね。 ezwebはXHTML Basicが使えるからたぶん大丈夫でしょう。 softbankもsoftbank向けCSSの中に入っていたと記憶しております。(確認のためsoftbank XHTML技術資料を良く読んでください) <style type="text/css" media="screen"> #p{display:block} #m{dispaly:none;} </style> <style type="text/css" media="handheld"> #m{display:block} #p{dispaly:none;} </style> <img id="m" src="MM"> <img id="p" src="PP"> ただマニュアルにそって作るとDOCTYPE宣言をどうするか困りますけどね。
- jprr
- ベストアンサー率51% (108/210)
振り返るって何でしょう? CGIやPHPを使って振り分けしないでHTMLでと言うことですか? <meta http-equiv="Refresh" content="0;URL=大きい画像が張ってあるURL"> ↑は使えないかも知れません。metaを読む端末もあるらしいので。 厳密にHTMLだけで、端末別にアクセスさせるのは難しいかも知れません。
お礼
あっすみません。振り分けるですね、日本語間違えました。 いやURLを移動しないで、同一ページ内で識別したいのですが、 やっぱり無理ですかねー。
お礼
おーこの方法いいですね、なるほどなるほど。 CGIやPHPは使うことが出来ます。 無料のスプリクトがないか自分でも探してみます。