webmanab.html

menu

2016/CSSHACK ブラウザやユーザーエージェントごとにスタイルを適用させる方法 – 『CSS』

 

toc

  1. ブラウザ別 CSS HACK
    1. ユーザーエージェント別 CSS HACK

      ブラウザ別 CSS HACK

      CSSへのセレクタなどの記述のみで、ブラウザ別にスタイルを適用させる方法です。
      備忘録として。

      IE

      
      /* IE10- */
      .sample{
        background: aquamarine;
      }
      /* IE10+ */
      @media all and (-ms-high-contrast: none){
        .ex{
          background: aquamarine;
        }
      }
      
      

      Firefox

      
      /* Firefox */
      @-moz-document url-prefix(){
        .sample{
          background: aquamarine;
        }
      }
      
      

      Chrome

      
      /* Chrome */
      @media screen and (-webkit-min-device-pixel-ratio:0){
        .ex {
          background: aquamarine;
        }
      }
      
      

      Safari

      
      /* Safari */
      @media screen and (-webkit-min-device-pixel-ratio:0) {
        ::i-block-chrome, .ex {
          background: aquamarine;
      }
      
      

      ユーザーエージェント別 CSS HACK

      ユーザーエージェントはJavaScriptで判別(条件分岐)して、任意のクラスを挿入して対応します。
      以下jQueryを利用した例です。

      iPhone

      
      /* iPhone */
      if ( navigator.userAgent.indexOf('iPhone') > 0 ) {
          $(".ex").addClass("iPhone");
      };
      
      

      Android

      
      /* Android */
      if ( navigator.userAgent.indexOf('Android') > 0 ) {
          $(".ex").addClass("Android");
      };
      
      

      おわります。

      share

      tip