CSSアニメーション「CSS Transition」

CSSアニメーションには
CSS TransitionとCSS Animationの2つの実装方法があります。
2つの違いについてはこちらの記事で紹介しています。
今回は CSS Transition についておさらいしていきたいと思います。
CSS Transition(CSS トランジション)とは?
要素に時間的変化を指定できるプロパティです。
単純な動きのアニメーションを実装する時に利用します。
■まずは簡単なDEMO!
下のAとBにマウスを当ててみてください。
Transitionを適用していないAは瞬時に透過するのに対し、
Transitionを適用しているBはゆっくりと透過します。
CSS Transitionの使い方
前項のDEMOを元に、簡単にTransitionの使い方について説明します。
まずは変化前と変化後を指定します。
|
1 2 3 4 5 6 7 8 |
div{ background-color: #00B2E6; opacity: 1; } div:hover{ opacity: 0.6; } |
まだこの状態ではアニメーションにはなりません。
DEMOのAの状態です。
ここにtransitionプロパティ(4、5行目)を加えます。
細かい記述の意味は次項で説明します。
|
1 2 3 4 5 6 7 8 9 10 |
div{ background-color: #00B2E6; opacity: 1; -webkit-transition: opacity 0.6s; transition: opacity 0.6s; } div:hover{ opacity: 0.6; } |
これでBの動きになります。
CSS Transitionプロパティ
transitionは以下のように指定します。
transition: transition-property transition-duration transition-timing-function transition-delay ;
記述の順序については、「transition-duration」を「transition-delay」より、必ず先に記述するようにだけ注意しましょう。
| transition-property | transitionを適用するCSSのプロパティを指定します
|
|---|---|
| transition-duration | アニメーションに掛かる時間を指定します(初期値は0) 単位は秒(s)またはミリ秒(ms)です。 初期値は0sでアニメーションしません。 1sとすると、1秒かけて変化し、0.5sとすると0.5秒かけて変化します。 |
| transition-timing-function | アニメーションのパターンを指定します
|
| transition-delay | アニメーションがはじまるまでの遅延時間を設定します 単位は秒(s)またはミリ秒(ms)です。 初期値は0sで、すぐにアニメーションが始まります。 3sとすると、3秒後にアニメーションが始まります。 |
■個別に記述も可能
以下のように個別に記述することもできます。
|
1 2 3 4 5 6 7 8 9 10 |
div{ -webkit-transition-property: all; transition-property: all; -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-timing-function: ease; transition-timing-function: ease; -webkit-transition-delay: 0.5s; transition-delay: 0.5s; } |
対応ブラウザ
IEは10以上、
Chrome、Safari、FireFox、Operaでも古いバージョンの場合は、ベンダープレフィックスを指定しないと正常に動作しない場合があります。
次回は、「CSS Animetion」について触れてみたいと思います!
![MARKLEAPS[マークリープス]](https://markleaps.com/blog/wp-content/themes/mkl/images/00_logo.png)


![[CSS] shape-outside プロパティで画像にテキストを回り込ませる方法](https://markleaps.com/blog/wp-content/uploads/2025/09/css-shape-outside-500x254.jpg)
![[HTML・CSS] 説明リストdlのdtとddを横並びに表示する方法(コピペで使えるコード付き)](https://markleaps.com/blog/wp-content/uploads/2025/09/html-css-dl-flex-grid-500x254.jpg)
![[CSS] 疑似クラス is() とwhere() の使い方と違い](https://markleaps.com/blog/wp-content/uploads/2023/11/css-is-where-500x254.jpg)