CSS @starting-style を試してみる
目次
はじめに
CSSのアットルールである @starting-style を試してみた。
@starting-style の概要
トランジションの開始時のスタイルを定義するために使用する。
アットルールなので @media{...} などと同様にルールセットに記述する or 入れ子にできる。
.hoge {
background-color: red;
transition: background-color 1s;
}
@starting-style {
.hoge {
background-color: transparent;
}
}
/* or */
.hoge {
background-color: red;
transition: background-color 1s;
@starting-style {
background-color: transparent;
}
}
ブラウザ対応状況
Can I use… によると Chrome, Edge, Safari 最新版でサポート済み。
関連としてデモに使用するプロパティ値のサポート状況は次の通り
- CSS property: display: Transitionable when setting transition-behavior: allow-discrete
- CSS property: overlay
デモ
所感
<dialog>要素と::backdropのアニメーションはallow-discreteとoverlayがサポートされているブラウザでのみ動作するため、MacではChromeでのみ動作を確認- 今時点の対応状況だと手を出しづらいかと思うが、将来的に
<dialog>のアニメーションの記述がシンプルになると思うのでサポート状況を追っていきたい。