セクション
重なるカード
大きなカードが順に画面上部に貼り付き、次のカードが上から重なるたびに下のカードが少しずつ縮んで暗くなる、奥行きのあるスタック表示。
ライセンス MIT
ソースと利用条件は、下の「仕様・利用条件」で確認できます。
この動きの特徴
- CSSのstickyで重なるカード
- 重なるたびに奥へ下がる
- 画面外では計算しない
- JavaScriptなし・動きを減らす設定でも重なり表示
導入と調整
使い方
<StackingCards
heading="How we work"
cards={[{ kicker: 'LISTEN', title: 'まず、聞く。', body: '説明文', palette: ['#f2efe8', '#161616', '#e4572e'] }]}
/>paletteは背景・文字・アクセントの3色です。右側の図形も同じ色で描きます。- 3〜5枚程度を目安にしてください。
動きの仕組み
- 重なり自体は
position: stickyだけで動くため、JavaScriptなしでも重なって表示されます。各カードは--stack-stepずつ下にずれて止まり、背後のカードの端が見えます。 mountStackingCards(root)は、後ろのカードが自分の貼り付き位置まで近づいた割合を計算し、その合計を「奥行き」として、1段ごとに5%縮小・暗さ16%を加えます。- 計算はスクロールと画面サイズの変化のときだけ、画面内にあるときだけ行います。
調整する箇所
- 上端の位置は
--stack-top、ずらす幅は--stack-stepで変更できます。 - 縮む量は
SHRINK、暗くなる量はDIMで調整します。
参考にした傾向
Webデザインクリップ に掲載された国内サイトでよく使われている「スティッキー・スタックカード」の表現を参考に、このカタログ用に一から設計・実装しました。特定サイトのコード・画像・文言・配色は使っていません。
利用条件
このカタログ用に書き下ろした実装で、MITライセンスで公開しています。LICENSE、src/Component.astro、src/motion.ts を取得して利用できます。再配布する場合は LICENSE の著作権表示と許諾文を残してください。
仕様・利用条件
仕様
- 分類
- セクション
- 更新日
- 2026.10.30
- ライセンス
- MIT
- 使用技術
- Astro
ソースと利用条件
公開中許可されたファイルだけを固定した版で参照できます。
- 公開ファイル
- 3件
- ライセンス
- MIT
