[CSS] IEで unset / initialが効かなかった
こんにちは、ma-ya’s CREATE[まーやずくりえいと]です。
先日コーディング中に気づいたCSSの小ネタをメモ。
IEではプロパティのリセット値 unset / initial が未対応だった
これ。恥ずかしながら知らんかったのです。
そもそもunset / initialってそんなに使うことないからっていうのもあるけど。
こういうのすぐ忘れちゃうんですよねえ。。
だもんで忘れないうちにメモしとこうと思ったわけです。
んで、最終的には↓で解決。
IEは「auto」で対応
該当のプロパティに「auto」を指定して解決。
stackoverflowではautoを指定したプロパティと併記するとありましたが、今回は値自体をautoに書き換えるだけでOKでした。
自分の場合は位置指定プロパティ(top / right / bottom / left)を使ったケースでしたが、プロパティによってはまた別の値を指定する必要があるかもです。
ちなみに検証IEは11。10以下もautoは対応してます。
[おまけ] initial / unset / inherit の違い
ざっくりと。
- initial : プロパティの初期値にリセット(IE死亡)
- unset : 親からの継承がある場合は継承値、無ければ初期値にリセット(IE死亡)
- inherit : 親からの継承値にリセット
基本リセットにはinitialを使いたい…ところだけどIEがこのヤロウな感じ。