web-dev-qa-db-ja.com

CSS3 * -transform:translate(…)をリセットするには?

CSS transformプロパティCSS translate値をリセットするにはどうすればよいですか?

私が持っていると言います:

_div.someclass {
    -webkit-transform: translate3d(0, -50%, 0);
       -moz-transform: translate(0, -50%);
        -ms-transform: translate(0,- 50%);
         -o-transform: translate(0, -50%);
            transform: translate3d(0, -50%, 0);
}
_

次に、すべての変換/翻訳をクリアするにはどうすればよいですか?


使用する必要があります:translate(0, 0);/translate3d(0, 0, 0);または _transform:auto;_?

52
knittl

MDNドキュメント に従って、 初期値noneです。

次を使用して変換をリセットできます:

div.someclass {
    transform: none;
}

ベンダープレフィックスの使用:

div.someclass {
    -webkit-transform: none; /* Safari and Chrome */
       -moz-transform: none; /* Firefox */
        -ms-transform: none; /* IE 9 */
         -o-transform: none; /* Opera */
            transform: none;
}
88
Simone

Safari iOS 10.3および11.0およびmacOS上のSafari 11では、-webkit-transform:noneを使用して実際に変換を適切にリセットしませんでした。または変換:なし;代わりに、transformプロパティで変更したすべての値をリセットする必要があったため、基本的には最初のオプションだと思います

translate(0, 0); / translate3d(0, 0, 0);

今のところ、ブラウザの互換性を確保する方法です。したがって、これは動作するはずです:

-webkit-transform: translate(0, 0) translate3d(0, 0, 0);
-moz-transform: none;
-ms-transform: none;
-o-transform: none;
transform: translate(0, 0) translate3d(0, 0, 0);
2
Brandito