実施原則メイングラフィックは、背景と前景の 2 つの要素で構成されています。次のサンプルコードでは、背景要素は疑似要素 背景要素の 前景要素の 1. メイン要素の <図> <img src='./man.png' alt='イルマ'> </図> 要素 形 { --hov: 0; --not-hov: calc(1 - var(--hov)); 表示: グリッド; 自分自身を配置: 中心; マージン: 0; パディングトップ: 5%; 変換: scale(calc(1 - .1*var(--not-hov))); オーバーフロー: 非表示; 境界線の半径: 0 0 クランプ(4em, 20vw, 15em) クランプ(4em, 20vw, 15em); } 図::before、図画像{ グリッドエリア: 1/1; place-self: 終了センター; } 図::前{ コンテンツ: ""; パディング: クランプ(4em, 20vw, 15em); 境界線の半径: 50%; 背景: url('./bg.png') 50%/カバー; } 図:ホバー{ --hov: 1; } 画像 { 幅: calc(2*clamp(4em, 20vw, 15em)); 境界線の半径: クランプ(4em, 20vw, 15em); 変換: translateY(calc((1 - var(--hov))*10%)) scale(calc(1.25 + .05*var(--hov))); } 2. <図> <img src='./man.png' alt='イルマ'> </図> スタイルは基本的に最初のものと同じで、 形 { --hov: 0; --not-hov: calc(1 - var(--hov)); 表示: グリッド; 自分自身を配置: 中心; マージン: 0; パディングトップ: 5%; 変換: scale(calc(1 - .1*var(--not-hov))); クリップパス: inset(0 round 0 0 クランプ(4em, 20vw, 15em) クランプ(4em, 20vw, 15em)); } 図::before、図画像{ グリッドエリア: 1/1; place-self: 終了センター; } 図::前{ コンテンツ: ""; パディング: クランプ(4em, 20vw, 15em); 境界線の半径: 50%; 背景: url('./bg.png') 50%/カバー; } 図:ホバー{ --hov: 1; } 図:hover::before { ボックスの影: 1px 1px 10px rgba(0, 0, 0, .3); } 画像 { 幅: calc(2*clamp(4em, 20vw, 15em)); 境界線の半径: クランプ(4em, 20vw, 15em); 変換: translateY(calc((1 - var(--hov))*10%)) scale(calc(1.25 + .05*var(--hov))); } 完全な例 <h2>overflow: hidden を使用する</h2> <図> <img src='./man.png' alt='イルマ'> </図> <h2>clip-path: path() メソッドを使用する</h2> <図> <img src='./man.png' alt='イルマ'> </図> 体 { 表示: グリッド; 背景: #FDFC47; 背景: -webkit-linear-gradient(右、#24FE41、#FDFC47); 背景: 線形グラデーション(右、#24FE41、#FDFC47); } 形 { --hov: 0; --not-hov: calc(1 - var(--hov)); 表示: グリッド; 自分自身を配置: 中心; マージン: 0; パディングトップ: 5%; 変換: scale(calc(1 - .1*var(--not-hov))); } 図:n番目の型(1) { オーバーフロー: 非表示; 境界線の半径: 0 0 クランプ(4em, 20vw, 15em) クランプ(4em, 20vw, 15em); } 図:n番目の型(2) { クリップパス: inset(0 round 0 0 クランプ(4em, 20vw, 15em) クランプ(4em, 20vw, 15em)); } 図、図画像 { 遷移: transform 0.2s イーズインアウト; } 図::before、図画像{ グリッドエリア: 1/1; place-self: 終了センター; } 図::前{ パディング: クランプ(4em, 20vw, 15em); 境界線の半径: 50%; 背景: url('./bg.png') 50%/カバー; コンテンツ: ""; 遷移: 0.25 秒の線形。 } 図:ホバー{ --hov: 1; } 図:hover::before { ボックスの影: 1px 1px 10px rgba(0, 0, 0, .3); } 画像 { 幅: calc(2*clamp(4em, 20vw, 15em)); 境界線の半径: クランプ(4em, 20vw, 15em); 変換: translateY(calc((1 - var(--hov))*10%)) scale(calc(1.25 + .05*var(--hov))); } 純粋な CSS でホバー画像のポップアウト効果を実現する方法についての記事はこれで終わりです。より関連性の高い CSS コンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後も 123WORDPRESS.COM を応援していただければ幸いです。 |
<<: 1 つの記事で Apache Avro データを解析する
>>: Vue プロジェクトでの支払い機能の実装 (WeChat 支払いと Alipay 支払い)
以下に示すプラス記号の効果を実現するには: この効果を実現するには、div 要素だけが必要です。 b...
ページを作成するときに、ページの見栄えを良くするために、背景画像を設定する必要があることがよくありま...
1. 背景Sysbench は、システムのハードウェア パフォーマンスをテストできるストレス テスト...
準備1. マスターとスレーブのデータベースのバージョンは一致している必要があります2. マスターデー...
123WORDPRESS.COM では、さまざまな環境での MYSQL の他のバージョンのインストー...
コンセプトMMM (Mysql のマスター マスター レプリケーション マネージャー) は、Perl...
目次1. 配列の平坦化(配列の次元削減とも呼ばれる)方法1: 削減メソッドを使用する方法2: スタッ...
MySQL では、IF()、IFNULL()、NULLIF()、および ISNULL() 関数を使用...
CSS3 を学ぶということは、新しい機能と基本的な理論に慣れることを意味します。この記事では、ケー...
目次抽象化と再利用シリアルセグメントシリアル、セグメントパラレル要約するはじめに: JS は当然並列...
1. プロジェクトの実行時に報告されるエラー情報は次のとおりです。 ファイル "/home...
2 端揃えを実現する div+css レイアウトは、Web ページの組版でよく使用されます。この記事...
これは、Web ページを Windows のスタート メニューなどのデスクトップ プログラムのように...
平行ボックスの余白 (二重余白の重なり) に関する面接の質問: 1 つのボックスに上余白があり、もう...
序文Intel のハイパースレッディング テクノロジーにより、1 つの物理コア上で 2 つのスレッド...