CSS3 疑似クラス要素のホバーと、トランスフォームやトランジションなどのアニメーション属性を使用して、いくつかのクールなアニメーション効果を作成できます。以下は、みんなで一緒に勉強して学ぶためのプロジェクトで使用された例です。デモアドレス: runjs。
ブラウザの互換性: Chrome、Safari、IE10 以降、IE9 はグラデーション効果をサポートしません、IE8 以下はサポートしません。
transform: この属性を使用すると、要素を回転、拡大縮小、平行移動、または傾斜させることができます。
transition: トランジション プロパティ。このプロパティは、4 つのトランジション プロパティを設定するために使用される省略形プロパティです。
transition-property: トランジション効果を設定する CSS プロパティの名前を指定します。コアコード:
一時停止前:
.cs-style-1 figcaption { height: 100%; width: 100%; opacity: 0; text-align: center; backface-visibility: hidden; transition: transform 0.3s, opacity 0.3s; -webkit-transition: -webkit-transform 0.3s, opacity 0.3s;}
一時停止後:
.cs-style-1 figure:hover figcaption { opacity: 1; transform: translate(15px, 15px); -webkit-transform: translate(15px, 15px);}
2. フローティング画像の下部にタイトルが表示されます
一時停止前:
.cs-style-2 figure img { z-index: 10; transition: transform 0.4s; -webkit-transition: -webkit-transform 0.4s;}
一時停止後:
.cs-style-2 figure:hover img { transform: translateY(-90px); -webkit-transform: translateY(-90px);}
3. タイトルにより画像が上に押し上げられます
一時停止前:
.cs-style-3 figure img { transition: transform 0.4s; -webkit-transition: -webkit-transform 0.4s;}.cs-style-3 figure { overflow: hidden;}.cs-style-3 figcaption { height: 40px; width: 80%; top: auto; bottom: 0; opacity: 0; transform: translateY(100%); -webkit-transform: translateY(100%); transition: transform 0.4s, opacity 0.1s 0.3s; -webkit-transition: -webkit-transform 0.4s, opacity 0.1s 0.3s;}
一時停止後:
.cs-style-3 figure:hover figcaption{ opacity:1; transform:translateY(0px); -webkit-transform:translateY(0px); transition: transform 0.4s, opacity 0.1s; -webkit-transition: -webkit-transform 0.4s, opacity 0.1s;}.cs-style-3 figure:hover img { transform: translateY(-50px); -webkit-transform: translateY(-50px);}
4. タイトル 3D 折りたたみにより画像が右に移動します
子要素はパースペクティブ効果 を取得しますが、 は要素自体ではありません 。 3D 要素の下部の位置を変更するには、perspective-origin 属性とともに使用します。
変位: 平行移動/X/Y回転: 回転/X/Y
3D 効果を実現できるように li を前景コンテナとして使用し、li 内の図形の変換スタイルを遠近法として定義します。 3D。
.cs-style-4 li { perspective: 1700px; perspective-origin: 0 50%;}.cs-style-4 figure { transform-style: preserve-3d;}
この効果を実現するには、コンテナ div を img に追加し、overflow:hidden を設定する必要があります。画像を右に移動した後、余分な部分を非表示にします。カーソルを合わせたときに画像を移動します:
.cs-style-4 figure div{ overflow:hidden;}.cs-style-4 figure img { transition: transform 0.4s;}.cs-style-4 figure:hover img { transform: translateX(25%);}
figcaption の左側を基本回転 -90° として設定し、画像を画面の外に立たせます:
.cs-style-4 figcaption{ height:250px; width:25%; transform-origin:0 0; transform:rotateY(-90deg); transition:transform 0.4s,opacity 0.1s 0.3s; opacity:0;}.cs-style-4 figure:hover figcaption { opacity:1; transform:rotateY(0deg); transition:transform 0.4s,opacity 0.1s;}
5. キャプション コンテンツのスケーリング
停止前:
.cs-style-5 figure img{ z-index:10; transition:transform 0.4s,opacity 0.1s 0.3s;}.cs-style-5 figure figcaption{ height: 100%; width: 100%; transform:scale(0.7); opacity:0; transition:transform 0.4s,opacity 0.1s 0.3s; }
停止後:
.cs-style-5 figure:hover img{ transform:scale(0.3);}.cs-style-5 figure:hover figcaption{ opacity:1; transform:scale(1); transition:transform 0.4s,opacity 0.1s;}