インタラクション
反転カーソル
セクション内でマウスカーソルを小さな点と遅れて追う輪に置き換え、通り過ぎた部分の色を反転させるカスタムカーソル。作品の上では「VIEW」と書かれた円に広がります。
ライセンス MIT
ソースと利用条件は、下の「仕様・利用条件」で確認できます。
この動きの特徴
- 差の合成で背景を反転するカーソル
- 作品の上でラベル付きの円に拡大
- リンクの上では小さく収縮
- マウスのときだけ有効、タッチは通常表示
- 動きを減らす設定では通常のカーソル
導入と調整
使い方
<BlendCursor
heading="Selected Works"
works={[{ title: 'Morning Ritual', meta: 'BRANDING / 2026', href: '/works/1', palette: ['#e7d5b9', '#d9472b', '#1d3b34'] }]}
viewLabel="VIEW"
/>- 作品カードの画像は
palette(背景・図形A・図形B)から図形で描きます。実際の写真に差し替える場合は.blend-cursor__artの中身を<img>にしてください。 - 自作の要素に
data-cursor="ラベル"を付けると、その上でカーソルがラベル付きの円に広がります。
動きの仕組み
mountBlendCursor(root)は(hover: hover) and (pointer: fine)かつ動きを減らす設定がオフのときだけ動きます。タッチ端末や JavaScript なしでは通常のカーソルとホバー表示のままです。- 点はポインターに直接追従し、輪は1フレームごとに残りの距離の16%ずつ近づきます。大きさも別にゆっくり変えるため、状態が切り替わってもカクつきません。
- 輪の線は拡大率で割り戻して、どの大きさでもおよそ1pxの太さに保ちます。
mix-blend-mode: differenceで、明るい背景では黒く、暗い背景では白く見えます。- カーソルの層は
aria-hiddenで、リンクのフォーカス表示はそのまま残します。
調整する箇所
- 状態ごとの大きさは
motion.tsのSCALE、追従の速さはFOLLOW、拡大の速さはGROWで調整します。 - 背景や文字色は
--blend-cursor-bg、--blend-cursor-inkで変更できます。
参考にした傾向
Webデザインクリップ に掲載された国内サイトでよく使われている「カーソル」の表現を参考に、このカタログ用に一から設計・実装しました。特定サイトのコード・画像・文言・配色は使っていません。
利用条件
このカタログ用に書き下ろした実装で、MITライセンスで公開しています。LICENSE、src/Component.astro、src/motion.ts を取得して利用できます。再配布する場合は LICENSE の著作権表示と許諾文を残してください。
仕様・利用条件
仕様
- 分類
- インタラクション
- 更新日
- 2026.10.30
- ライセンス
- MIT
- 使用技術
- Astro
ソースと利用条件
公開中許可されたファイルだけを固定した版で参照できます。
- 公開ファイル
- 3件
- ライセンス
- MIT
