CSSスライダーシリーズの概要
画像の配置を視覚化したので、コードを調べてみましょう。
基本構造
HTMLは、以前のスライダーと一致しています:
CSSグリッドは、画像を積み重ねるために使用されます
<div> <img alt="" src=""><img alt="" src=""><img alt="" src=""><img alt="" src=""><img alt="" src=""> </div>
スライダーのロジックは、最初の記事の円形スライダーを反映しています。 画像はポリゴンを形成します。完全な回転が初期画像に戻ります。 以前のスライダーは、
.gallery { display: grid; } .gallery > img { grid-area: 1 / 1; width: 160px; aspect-ratio: 1; object-fit: cover; }
SASSは画像をループし、変換を適用するために使用されます:transform-origin
animation-delay
transform
画像の初期回転。 角度は画像数(n)に依存し、360 deg/n。 中心点を調整するための翻訳。 距離は50%/tan(180deg/n)として計算されます 目的の配置のために、x軸(90deg)の周りの回転
@for $i from 1 to ($n + 1) { .gallery > img:nth-child(#{$i}) { transform: rotate(#{360*($i - 1) / $n}deg) /* 1 */ translateY(50% / math.tan(180deg / $n)) /* 2 */ rotateX(90deg); /* 3 */ } }
transform
無限ループのためのコンテナ回転
記事では、バリエーションを調査します。垂直スライダー(キーフレームと画像変換でrotate()
をrotateX()
に変更することで達成されます)とキューブスライダー(各面に6つの画像と特定の回転を使用)。 キューブスライダーのアニメーションはより複雑で、複数の軸上の回転の慎重なオーケストレーションが必要です。ランダムキューブスライダーのバリエーションも提示されており、より予測不可能な効果のために非シーケンシャル回転を導入します。
チュートリアルは、最小限のHTMLとJavaScriptを使用して複雑なアニメーションを作成する際のCSSの力を強調することで終了します。 このシリーズは、インタラクティブで視覚的に魅力的な要素を構築するためのCSSの汎用性を示しています。
以上がCSS Infinite 3Dスライダーの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。