1つのHTMLファイルを、PCと携帯から閲覧した時に、表示を変える方法ってありますかね?
PCはa.html
携帯はb.html
と振り分けるのではなく、あくまでも同じファイルで。
cssで切り替えることが可能です。
参考リンク
http://www.stylesheet-stylebook.com/archives/000095.php
"CSS には media typeを使ってCSSを読み込むデバイスごとにCSSファイルを使い分けることが出来ます。"とあり、それぞれのcssを用意しておくことで、一つのHTMLの見栄えを、様々な出力環境用に合わせられるようになっています。
たとえば、印刷用のcssですと、長ったらしくて印刷に必要の無い箇所を非表示にするといった事も出来ます。
モバイル用に、大きい画像を非表示にすることもできます。
cssで切り替えることが可能です。
参考リンク
http://www.stylesheet-stylebook.com/archives/000095.php
"CSS には media typeを使ってCSSを読み込むデバイスごとにCSSファイルを使い分けることが出来ます。"とあり、それぞれのcssを用意しておくことで、一つのHTMLの見栄えを、様々な出力環境用に合わせられるようになっています。
たとえば、印刷用のcssですと、長ったらしくて印刷に必要の無い箇所を非表示にするといった事も出来ます。
モバイル用に、大きい画像を非表示にすることもできます。
ありがとうございます。
調べてみます。
ユーザーエージェントか、IPアドレスで判断して、IF文等で処理を分岐させて、PC/Docomo/EzWeb/SoftBank別のHTMLを出力すれば良いです。
ユーザーエージェントは偽装されてアクセスされる可能性もややあります。
携帯のIPアドレスは、各キャリアのHPの技術情報で知ることができるかと思います。
また、多くの携帯は「css」に対応していないかと思います。
userAgent(ユーザーエージェント一覧)
ありがとうございます。
書き忘れましたが、私はPC初心者ですので、
もう少し、具体的に教えて頂けると助かります。
IFで処理って事は、phpですかね?
HTML、に、見せつつスクリプトを使用する。
httaccessでx.htmlをCGIやphpにくくりつける。
(例)
<Files x.html>
SetHandler cgi-script
</Files>
x.htmlというファイル名のスクリプトでUserAgentを判断し、PC用のa.html/携帯用のb.htmlを読み込んで出力する。
ごめんなさい。
私がやりたいのは、振り分けるのではなく、あくまでも同じhtmlファイルです。
みなさんありがとうございます。
結果として、CSSで表示を振り分けるということになりそうですね。
au、ソフトバンクで試したら、うまく行ったのですが、docomoでは、うまくcssが適用されませんでした。
また、その件については、質問を変えて、投稿したいと思います。
その時はまた、回答のほうをよろしくお願いいたします。
一度これで、締め切りたいと思います。
ありがとうございます。
調べてみます。