web関連

【css】ブラウザごとにcssを反映させる方法

IEの時だけcssを反映させたいって時があるので備忘録

ブラウザごとにcssを反映させる方法

いるかわからんけどデモ
<style>
/*IEだけに適用*/
@media all and (-ms-high-contrast: none) {
  body {
    background: skyblue;
  }
}

/*GoogleChromeだけに適用*/
@media screen and (-webkit-min-device-pixel-ratio:0) {
  body {
    background: green;
  }
}

/*Firefoxだけに適用*/
@-moz-document url-prefix() {
  body {
    background: orange;
  }
}

/*Safariだけに適用*/
_::-webkit-full-page-media, _:future, :root body {
    background: blue;
}

/*Edgeだけに適用*/
@supports (-ms-ime-align:auto) {
  body {
    background: skyblue;
  }
}
</style>

GoogleChromeだけに指定するコード、Firefoxで開いたときにも反応してるっぽいから
(GoogleChromeだけ指定するコード)
(Firefoxだけ指定するコード)
って並び順にしないとうまく反映されないわ、注意

あ、edgeもだわ
edgeもGoogleChromeの後に指定しないとGoogleChromeが反映しちゃう

IEの時だけ指定することよくあるけど、他のブラウザで使うことなんてほとんどない
だから、GoogleChromeがFirefoxとedgeで反応すること気にならない

Leave a Comment

入力エリアすべてが必須項目です。メールアドレスが公開されることはありません。

内容をご確認の上、送信してください。