CSS
 Computer >> コンピューター >  >> プログラミング >> CSS

CSS3のtransitionプロパティで複数のトランジションを同時に実行する方法

CSS3では、transitionプロパティを使うことで、要素に滑らかなアニメーション効果を簡単に追加できます。このプロパティはショートハンド(省略記法)として機能し、トランジションの対象となるプロパティ名、所要時間(duration)、タイミング関数(timing function)、遅延時間(delay)をたった1行でまとめて指定できるのが特徴です。

さらに、複数のプロパティに対してトランジションを適用したい場合も、各設定をカンマ(,)で区切って列挙するだけで実現できます。以下は、CSS3で複数のトランジションを同時に実行するサンプルコードです。

サンプルコード

<!DOCTYPE html>
<html>
<head>
<style>
.container div {
    width: 300px;
    height: 100px;
    border-radius: 1px;
    background: rgb(25, 0, 255);
    border: 2px solid red;
    transition: width 2s, border-radius 2s;
}
.container:hover div {
    width: 100px;
    border-radius: 50%;
}
</style>
</head>
<body>
<h1>複数トランジションのサンプル</h1>
<div class="container">
<div></div>
</div>
<h2>
上のdivにマウスカーソルを合わせると、幅が縮まり円形に変化します
</h2>
</body>
</html>

コードのポイント

  • transition: width 2s, border-radius 2s; — 「幅(width)」と「角丸(border-radius)」という2つのプロパティに対して、それぞれ2秒かけて変化するトランジションを設定しています。
  • :hover 疑似クラス — マウスカーソルが要素に重なったタイミングで、幅を100pxまで縮小すると同時に、border-radiusを50%に変更することで要素を円形へと変形させています。

実行結果

上記のコードを実行すると、次のような表示になります。青色の長方形の上にマウスカーソルを乗せると、幅が徐々に縮まりながら角が丸くなり、最終的に円形へとスムーズにアニメーションします。

CSS3のtransitionプロパティで複数のトランジションを同時に実行する方法

CSS3のtransitionプロパティで複数のトランジションを同時に実行する方法

  1. CSS3のtransitionプロパティで複数のトランジションを同時に実行する方法

    CSS3では、transitionプロパティを使うことで、要素に滑らかなアニメーション効果を簡単に追加できます。このプロパティはショートハンド(省略記法)として機能し、トランジションの対象となるプロパティ名、所要時間(duration)、タイミング関数(timing function)、遅延時間(delay)をたった1行でまとめて指定できるのが特徴です。さらに、複数のプロパティに対してトランジションを適用したい場合も、各設定をカンマ(,)で区切って列挙するだけで実現できます。以下は、CSS3で複数のトランジションを同時に実行するサンプルコードです。サンプルコード<!DOCTYPE htm

  2. CSS3フレキシブルボックスレイアウト(Flexbox)の基本と使い方

    CSS3には「フレキシブルボックス(Flexible Box)」と呼ばれるレイアウトモードが用意されており、一般的にFlexbox(フレックスボックス)として知られています。Flexboxを活用すれば、複雑なWebアプリケーションやWebページのレイアウトも、従来のfloatやpositionを使った手法に比べて、はるかに簡単かつ柔軟に構築できます。Flexboxは「コンテナ(親要素)」と「フレックスアイテム(子要素)」で構成されます。コンテナに指定できる主なプロパティは以下のとおりです。flex-direction:アイテムが並ぶ方向(主軸の向き)を指定しますflex-wrap:アイテムの折