• ベストアンサー

ブラウザによってスタイルシートを分けるためのJava Script

IEとsafariでスタイルシートを分けたいと思っています。 それにはJava Scriptで判別すると分かったのですが、どのように書いたらよいのでしょうか? 前に見つけたサイトが見つけられなくて今四苦八苦してます。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

navigatorのappAgentでチェックするのが妥当かと。 <script> if(navigator.userAgent.match(/safari/i)) document.write("safari"); if(navigator.userAgent.match(/msie/i)) document.write("ie"); </script> しかしそれより、スタイルシート側できちんとブラウザの違いを 吸収してやる方がいいとおもいますよ

関連するQ&A

  • スタイルシートがブラウザによって効かない原因は?

    普通にタグによって作成しているページに、スタイルシートで一括で指定をしています。 ところが、IEではきちんと表示できるのに、Safariではスタイルシートでの指示がはずれてしまいます。 以前、同じ指定で作っていたときは、きちんと表示できていたのですが、原因が究明できません。 スタイルシートの記述は、まったく同じです。Safariの環境設定も同じなのに、前に作ったものは、きちんと表示でき、今回作ったものだと表示できないのです。 IEで表示できるなら大丈夫かな、と、思わないでもないのですが、このような場合の原因をさぐるのは、どうしたらいいのでしょうか? よろしくお願いします。

    • ベストアンサー
    • HTML
  • スタイルシートのせいで、印刷がきちんとできません。

    スタイルシートの2カラムでサイトを作成しております。 はじめて、本格的にスタイルシートでレイアウトしたので、 四苦八苦しております。 できたサイトをFirefoxで印刷しようとすると、1ページ目と最後のページは印刷されるのですが、その途中のページが印刷されなく、プレビューにものりません。 これはFirefoxのバグとわかり、IEでやってみると、きちんとプレビューもされ、印刷できます。 ただ、それでも印刷すると、サイトの右端が切れてしまい、左端のメニューはなぜかすっかりなくなっています。 このような場合、どうすればきちんと印刷できるのでしょうか?

    • ベストアンサー
    • HTML
  • ブラウザでJAVA_Scriptを有効にするには

    あるWebページを開く際に、「このブラウザにはJAVA Scriptが有効になっていません。有効に設定してください」 と表示されます。 どうやったら設定できるのでしょうか?方法を教えて下さい。 ブラウザは、IE9、Firefox15,GoogleCrome の三種を使っていますが、どれも同じコメントが表示されます。 OS=Windows7です。 

  • 各ブラウザにおけるスタイルシート適用について

    こんにちは。 いつもお世話になります。 今回、Win・IE対応のページを作ったのですが、知り合いからMacの標準ブラウザであるサファリではほとんど見れないと言われ、NNでも一部欠損、IEでも駄目という事でした。 原因はスタイルシートと思われます(リンクを三色に使い分けるのにスタイルシートを導入しました。そのせいでリンクが使えないようなのです。またテンプレートでお借りして来たものも対応してなかったようで、非表示だったようです)。 そこで、このスタイルシートはWinは対応だけれどMac版のIEは駄目、operaはOKといったようなものは一目で判る一覧表(もしくは一覧を載せているサイト)はありますでしょうか? 「スタイルシート辞典」(アンク、第二版)は持っているのですが、IEとNNしか表記がありません。 叉、以前は手許にMacがあった為、MacとWinで動作を確認出来ましたが、今は手放した為、HTMLページを作成しても確認出来なくなりました。

    • ベストアンサー
    • HTML
  • IEでJava scriptが表示されない

    IE6でJava Scriptで作ったスライドショーなどが「×印」が左上に出て表示されません。 IEのセキュリティーではJava Scriptは有効になっています。 色々と調べましたがもう限界です。 どなたか心当たりがあるところを教えてくださいませ。 よろしくお願いいたします。

  • スタイルシートについて

    スタイルシートについてお尋ねしたいのですが・・・。 下記のようにしてスタイルシートを使用したいのです。 ↓ <table style="position:absolute;top:140;left:170"> スタイルシートはIEのバージョンによって、使えたり使えなかったりするのでしょうか? 私が使用しているIEのバージョンがIE5.5で、同じプログラムをIE6.0で 動作させるとstyleが効いていたり効いていなかったりするのです。 何かわかる方がいらっしゃれば、ご指導ください。

    • ベストアンサー
    • HTML
  • スタイルシートについて

    簡単なことで申し訳ないんですが、困っていますので。 あるサイトで、カスケーディングスタイルシートとジャバスクリプトスタイルシートという2種類のスタイルシートについて説明してありました。それがどんのものかという説明がありませんでしたので、違いがよくわかりません。どのような違いがあるのでしょうか? また、スタイルシートの優先順位なのですが「ユーザーによる設定→製作者側の設定→ブラウザの設定」なのか「製作者→ユーザー→ブラウザ」なのかが曖昧です。どちらが正しいのでしょうか?

    • ベストアンサー
    • HTML
  • 外部スクリプトとスタイルシート

    とある質問にあったHPのソースを見たところ外部にJavaScriptとスタイルシートのファイルを置いて そこからリンクしているみたいでした。 そして外部ファイルをローカル(パソコン)にダウンロードして中身を メモ帳で見たのですが↑などの変な記号でぎっしりにつまっていました。 スタイルシートのほうは@もありました(@importなど) 文字化けのように見えるのですがこれは文法(スクリプト)としては正しいのでしょうか? 直接ソースに書いてあるようにスクリプトを見るにはどうしたらいいでしょうか? ちなみにここのHPです http://www.blogger.com/start

    • ベストアンサー
    • HTML
  • 「javaスクリプトの取込みがうまくされていない」とは??

    こんにちは。よろしくお願いいたします。 今、私のパソコン(Win98)では、ブラウザとして主にIE (はじめ5.0→途中から5.5)を使っておりますが、サイト閲覧中に、 いくつかのサイトで、画面中のボタンを押したら次の窓が開くという、 そのことができない(画面中のボタンを押しても、何も起こらない)のです。 よって、それらのサイトを見るときには、 やむなくネットスケープを使っています。 あるネット銀行の、ログイン画面でも、同様(ログインボタンを押しても、 パスワード等入力の画面が現れない)なので、メールで質問してみました。 すると返答は「javaスクリプトの取込みがうまくされていない可能性がある」 「インターネット一時ファイルの削除、および履歴のクリアを行ってください」 とありました。 javaスクリプトとはどういうものか、わからないのですが、 一時ファイルの削除や履歴のクリアは、けっこう普段からしていることなのに… と思いつつ、それでもやってみたのですが、やはり改善しません。 そこで、今日は、ブラウザの更新をしたらできるようになるかと、 IE6.0をダウンロードしてみましたが、症状は変わりませんでした。 これはその「javaスクリプト」なるものが原因なのでしょうか? ご存知の方がいらっしゃいましたら、お手数ながらご教示のほど よろしくお願い申し上げます。

  • ブラウザ/OS/バージョン別にスタイルシートを読み込む

    私の考え違いか わかるかた教えて下さい。 JavaScript例文辞典のブラウザ/OS/バージョン別にスタイルシートを読み込む http://www.openspc2.org/reibun/javascript/browser/013/index.html document.write("<link rel='stylesheet' type='text/css' href='../c_f/m_ta01.css'>");}によりスタイルシートを読み込む では、IEでは、ブラウザ/OS/バージョン別にスタイルシートを読み込む ことが出来ません。 SAFARIとGoogle Chromeでは、ブラウザ/OS/バージョン別にスタイルシートを読み込む ことが出来ますが。 JavaScriptで代替CSSを適用する方法 http://www.usamimi.info/~geko/arch_web/02_sample/018/index.html <link rel="stylesheet" href="../c_f/m_rn1o.css"> <link rel="alternate stylesheet" href="../c_f/o_ie01.css" title="ie"> <link rel="alternate stylesheet" href="../c_f/o_ta01.css" title="ta"> 上記3行の指定で代替スタイルの指定をJavaScriptで指定する では、IEやFIREFOXでは、ブラウザ/OS/バージョン別にスタイルシートを読み込む ことが出来ますが。 SAFARIとGoogle Chromeでは、ブラウザ/OS/バージョン別にスタイルシートを読み込む ことが出来ません。 何か簡単に、ブラウザ/OS/バージョン別にスタイルシートを読み込むことが 出来ませんか。

専門家に質問してみよう