- ベストアンサー
ブラウザ毎の振り分け
- ブラウザ毎の振り分けを実現するために、.htaccessファイルを使用しています。
- Internet Explorerのバージョンごとにリダイレクトを設定し、携帯端末とPCで振り分けを行っています。
- 新しいHTML5+CSS3ページへのアクセスはIE9以外のIEブラウザをie6-8フォルダにリダイレクトし、非対応ブラウザは別のページに誘導しています。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
>万人が同じように見れてこそ、真のHTML/CSSというもの。 違いますよ。HTMLは「万人が同じように情報を共有できる」ためのもです。 「万人が同じように見」えるためには、PDF( http://ja.wikipedia.org/wiki/PDF )のように選りすぐれた仕様があります。 ・・・ただし、正確には「万人が同じように【印刷して】見れる」ですが・・・ そもそも、読み上げソフトや携帯端末、検索エンジンはどうすればよいのでしょう。 したがって、「ハックすら考えなくてよい」のです。・・これすら邪道かもしれません。 HTML ↑ ネットワークで繫がっているすべての端末が情報を共有するために考え出されて | その有益性が認められてここまで発展してきた。 ↓ PDF OSやブラウザ、フォントに依存せず、デザインしたものがまったく同じに利用でき るための仕様 たとえばウェブ標準のHTML5で記述すると <body> <header> 見出しやこのページの目次、要約 </header> <section> <hn>章見出し</hn> 記事 <section> <hn>項見出し</hn> 記事 </section> </section> <footer> 文書の情報 </footer> </body> HTML4.01(XHTML1.0,XHTML1.1は基本的に同じ)は、<div class="header">とかになる。 ・・・・DIVはIDやクラス名で構造を示す・・・ 【引用】____________ここから DIV要素とSPAN要素は、id属性及び class属性と併用することで、文書に構造を付加するための一般機構を提供する。  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ここまで[The global structure of an HTML document (ja)( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/struct/global.html#h-7.5.4 )]より この様に書かれていると、「すべての端末で情報を共有できますね」検索エンジンもどこがヘッダで、どこが本文か理解できる。 HTMLには、ワープロやDTP( http://ja.wikipedia.org/wiki/DTP )とは本質的に目的が違いますから、当然デザインについては制約があります。というか、そもそもデザインのためじゃない--そのためにCSSが用意されていますが完璧じゃない---。 同じように見せたい「ページ作りは「HTMLを使いながら、HTMLの目的を否定する」矛盾したことなのです。 気持ちは、とて見よくわかります。しかし、14.1 スタイルシートの概説 ( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/present/styles.html#h-14.1 ) も一度読んでみて下さい。 「角をためて牛を殺す」にならないよう。 そうすると、今まで苦労して悩んだことは何だったのだろう・・と思います。私もそれを経験しています。はっきり言ってショックでした。
その他の回答 (1)
- ORUKA1951
- ベストアンサー率45% (5062/11036)
目的とまったく異なる回答で申し訳ないのですが。 ユーザーエージェントは、IE(Trident)、firefox(Gecko)、safari(WebKit)、opera(Presto)、googleChrome(Chromium)、Konqueror(WebKit)、Camino(Gecko)・・・だけじゃなく、携帯電話用の(Iris Browser、NetFront Browser)、スマートフォン用のブラウザ、視覚障害者用の読み上げブラウザ、点字出力端末、テキストブラウザ(Emacs/W3、Links、Lynx--google推奨--など)、そしてなんと言ったって検索エンジンのロボット・・・。数え上げたらきりがないし、今後もどんどん変わっていく。 ブラウザごとの切り替えなんてきりがないです。 【重要!!】そもそも、HTMLは、 【引用】____________ここから HTML文書が、ブラウザやプラットフォームの違いを超えてうまく働くべきであるということは、多くが認めるところである。 相互運用性の達成は、コンテンツプロバイダのコストを低下させる。 なぜならただ1種類の文書しか作る必要がなくなるからだ。 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^(私の注) もし【相互運用性確保の】努力が成されなければ、Webは互換性のないフォーマット毎に分け隔てられた世界に分割され、すべての関係者にとっての商業的可能性が減少することとなるであろう、大きなリスクを負うこととなる。  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ここまで[Introduction to HTML 4 (ja)( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/intro/intro.html#h-2.2.1 )]より 同じく 【引用】____________ここから HTMLは、どんな環境からもWebの情報を利用できるようにすべきだという方針の下に開発されている。例えば、様々な解像度や色深度のグラフィックディスプレイを持つPCや、携帯電話、モバイル機器、音声入出力機器、帯域が広いコンピュータや狭いコンピュータ、等の環境である。  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ここまで[Introduction to HTML 4 (ja)( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/intro/intro.html#h-2.2.1 )]より したがって、きちんとHTML/CSSを作成すれば、わざわざユーザーエージェントごとにページを作成する必要がありません。 そもそも、対応するブラウザを限定しなければならないページ作りは「HTMLを使いながら、HTMLの目的を否定する」矛盾したことなのです。 同一のページでスタイルシートを工夫することで、古いブラウザや他のユーザーエージェント用に対応させることは、サーバーで振り分けるより、はるかに容易ですし、今後も管理が楽です。 >.htaccessでブラウザ毎にリダイヤルする方法を教えてください! これは自分で管理するより、レンタルサーバー業者のサービスを利用したほうが楽です。私は十数年来海外のISPなので解りませんが、国内の大手の業者ならあるはずです。 それでも、User Agent Switcher ( https://addons.mozilla.org/ja/firefox/addon/user-agent-switcher/ )などのアドオン使ってると無効です。
お礼
ご回答ありがとうございます。 おっしゃることはごもっともです。万人が同じように見れてこそ、真のHTML/CSSというもの。しかし、そこまでのスキルはないのでこの際その掟を破らせて頂きます。 ORUKA1951様のおっしゃる.htaccessに頼らない対応分けの方法を探しました。その結果、CSSハックという手法に行き着きました。これなら出来そうですし、確実な感じですね。早速試してみようと思います。
お礼
ご回答ありがとうございます。 HTML、浅いようで深いですね。個人的には勝手に、「同じデザインで全てのブラウザで見れないといいページとはいえない」と思っていました。もちろん、PCページとモバイルページでは異なりますが… 概要は読んでみましたが、いまいちよくわかりませんでした。要するに、CSSはデザインのためではなく、相互運用や障害の撤廃のために作られたということで解釈は合ってますか? とりあえず、現在のところIE6,7,8には別のスタイルシートを読み込ませるようにHTMLに書き足しました。これで、とりあえずはIE9以外のIEでもにたいように見れるようには出来ると思います。今のところ、これで手を打つしかなさそうですね。