CSS - animation-composition
概要
属性名 | animation-composition |
---|---|
値 | [replace | add | accumulate]# |
初期値 | replace |
適用可能要素 | すべての要素 |
継承 | 継承しない |
サポート | https://caniuse.com/mdn-css_properties_animation-composition |
説明
アニメーション適用前の基盤値と、アニメーション適用後の効果値の合成方法を指定します。
- replace
- 基盤値を効果値で上書きします。基盤値が rotate(30deg)、効果値が rotate(60deg) とすると rotate(60deg) となります。
- add
- 基盤値に効果値を追記します。基盤値が rotate(30deg)、効果値が rotate(60deg) とすると rotate(30deg) rotate(60deg) となります。
- accumulate
- 基盤値と効果値を合算します。基盤値が rotate(30deg)、効果値が rotate(60deg) とすると rotate(90deg) となります。
使用例
CSS
@keyframes myframe { from { transform: translateY(0px) rotate(-30deg); } /* 効果値 */ to { transform: translateY(50px) rotate(-90deg); } /* 効果値 */ } .example { display: flex; .example-box { width: 100px; height: 100px; border: 1px solid #ccc; .example-item { display: inline-block; transform: translateY(30px) rotate(-60deg); /* 基盤値 */ animation: myframe 3s infinite; border-bottom: 3px solid #f00; } .ac-replace { animation-composition: replace; } .ac-add { animation-composition: add; } .ac-accumulate { animation-composition: accumulate; } } }
HTML
<div class="example"> <div class="example-box"> <div class="example-item ac-replace">A</div> </div> <div class="example-box"> <div class="example-item ac-add">A</div> </div> <div class="example-box"> <div class="example-item ac-accumulate">A</div> </div> </div>
表示
A
A
A
replace の場合、基盤値を効果値が上書きしたアニメーションと同じ動きとなります。
@keyframes myframe { from { transform: translateY(0px) rotate(-30deg); } to { transform: translateY(50px) rotate(-90deg); } }
add の場合、基盤値の後に効果値を追記したアニメーションと同じ動きとなります。
@keyframes myframe { from { transform: translateY(30px) rotate(-60deg) translateY(0px) rotate(-30deg); } to { transform: translateY(30px) rotate(-60deg) translateY(50px) rotate(-90deg); } }
accumulate の場合、基盤値の値に効果値の値を合算したアニメーションと同じ動きとなります。
@keyframes myframe { from { transform: translateY(30px) rotate(-90deg); } to { transform: translateY(80px) rotate(-150deg); } }
リンク
- https://drafts.csswg.org/css-animations-2/#animation-composition
- https://developer.mozilla.org/ja/docs/Web/CSS/animation-composition
- https://caniuse.com/mdn-css_properties_animation-composition
Copyright (C) 2025 杜甫々
初版:2025年2月23日、最終更新:2025年2月23日
https://www.tohoho-web.com/css/prop/animation-composition.htm