原理 ホバーしたときに要素に影を設定します: box-shadow で、通常とは異なるスタイルにします。 box-shadow 式については、MDN を参照してください。 /* x オフセット | y オフセット | 影の色 */ ボックスシャドウ: 60px -16px ティール; /* x オフセット | y オフセット | 影のぼかし半径 | 影の色 */ ボックスの影: 10px 5px 5px 黒; /* x オフセット | y オフセット | 影のぼかし半径 | 影の広がり半径 | 影の色 */ ボックスの影: 2px 2px 2px 1px rgba(0, 0, 0, 0.2); /* 挿入 (内側に影) | x オフセット | y オフセット | 影の色 */ box-shadow: インセット 5em 1em ゴールド; /* 任意の数の影をカンマで区切って指定します*/ ボックスの影: 3px 3px 赤、-1em 0 0.4em オリーブ; 単一のボックスシャドウを指定するには:
値が 2 つだけ指定されている場合、ブラウザではそれらを x 軸のオフセットと y 軸のオフセットとして解釈します。
以下はこのブログシステムで頻繁に使用されるいくつかのスタイルです。 1. マウスオーバーで紙を折ったようなスタイルを再現 コード実装: グラデーション効果を生成するために、ホバー状態に <!DOCTYPE html> <html lang="ja"> <ヘッド> <メタ文字セット="UTF-8"> <title>マウスホバーで折り紙のスタイルをシミュレート</title> </head> <スタイル タイプ="text/css"> /* コアスタイル */ .カード{ 幅: 300ピクセル; 高さ: 180ピクセル; 境界線: 10px 実線 #FFF; border-bottom: 0 なし; 背景色: #FFF; ボックスシャドウ: 0 1px 1px 0 rgba(0, 0, 0, .15) } .card:hover { ボックスの影: 0 5px 5px 0 rgba(0, 0, 0, .25); 遷移: すべて .2 秒のイーズイン アウト。 } /* 非コアスタイル */ .カードヘッダー{ テキスト配置: 中央; } .card-body、.card-footer { テキスト配置: 左; } </スタイル> <body style="background: #e3e3e3;"> <div class="カード"> <div class="カードヘッダー"> <p>これはカードです</p> </div> <div class="カード本体"> <p>説明: マウスをホバーすると、紙を折ったときのような効果が得られます</p> </div> <div class="カードフッター"> <p>原則: Y軸のオフセットと影の拡散半径(2番目と3番目の数字)を変更します</p> </div> </div> </本文> </html> 2. 紙のフォーカススタイルを模倣したマウスホバー コード実装: 上記との違いは、 <!DOCTYPE html> <html lang="ja"> <ヘッド> <メタ文字セット="UTF-8"> <title>マウスホバーで紙のフォーカススタイルをシミュレート</title> </head> <スタイル タイプ="text/css"> /* コアスタイル */ .カード{ パディング: 10px; 幅: 300ピクセル; 高さ: 180ピクセル; 背景色: #FFF; ボックスシャドウ: なし; } .card:hover { ボックスの影: 0 1px 6px 0 rgba(0, 0, 0, .2); 境界線の色: #eee; 遷移: すべて .2 秒のイーズイン アウト。 } /* 非コアスタイル */ .カードヘッダー{ テキスト配置: 中央; } .card-body、.card-footer { テキスト配置: 左; } </スタイル> <body style="background: #e3e3e3;"> <div class="カード"> <div class="カードヘッダー"> <p>これはカードです</p> </div> <div class="カード本体"> <p>説明: マウスをホバーすると、紙全体に焦点が合います</p> </div> <div class="カードフッター"> <p>原則: Y軸のオフセットと影の拡散半径(2番目と3番目の数字)を変更します</p> </div> </div> </本文> </html> 3. マウスホバーで紙を持ち上げるスタイルを模倣 コード実装: <!DOCTYPE html> <html lang="ja"> <ヘッド> <メタ文字セット="UTF-8"> <title>マウスホバーで紙を持ち上げるスタイルをシミュレート</title> </head> <スタイル タイプ="text/css"> /* コアスタイル */ .カード{ パディング: 10px; 幅: 300ピクセル; 高さ: 180ピクセル; 背景色: #FFF; 境界線: なし; 境界線の半径: 6px; -webkit-transition: すべて 250ms cubic-bezier(0.02, 0.01, 0.47, 1); 遷移: すべて 250ms cubic-bezier(.02, .01, .47, 1); } .card:hover { ボックスの影: 0 16px 32px 0 rgba(48, 55, 66, 0.15); 変換: translate(0,-5px); 遷移遅延: 0秒 !重要; } .box-shadow { -webkit-box-shadow: 0 0.25rem 1rem rgba(48, 55, 66, 0.15); ボックスの影: 0 4px 16px rgba(48, 55, 66, 0.15); } /* 非コアスタイル */ .カードヘッダー{ テキスト配置: 中央; } .card-body、.card-footer { テキスト配置: 左; } </スタイル> <body style="background: #e3e3e3;"> <div class="カードボックスシャドウ"> <div class="カードヘッダー"> <p>これはカードです</p> </div> <div class="カード本体"> <p>説明: マウスをホバーすると、紙全体が持ち上がります</p> </div> <div class="カードフッター"> <p>原則: 変換属性を追加する</p> </div> </div> </本文> </html> 4. マウスホバーで紙が浮き上がるような動きを再現(アニメーション実装) コード実装: <!DOCTYPE html> <html lang="ja"> <ヘッド> <メタ文字セット="UTF-8"> <title>マウスをホバーすると、紙が浮き上がるようなスタイルをシミュレートします</title> </head> <スタイル タイプ="text/css"> /* コアスタイル */ .カード{ パディング: 10px; 幅: 300ピクセル; 高さ: 180ピクセル; 背景色: #FFF; 境界線: なし; 境界線の半径: 6px; -webkit-transition: すべて 250ms cubic-bezier(0.02, 0.01, 0.47, 1); 遷移: すべて 250ms cubic-bezier(.02, .01, .47, 1); } .card:hover { アニメーション: 0.0001 秒の線形飛行; アニメーション塗りつぶしモード: 両方; } @keyframes フライ { 0% { ボックスの影: 2px 2px 2px #e2dede、-2px 2px 2px #e2dede; } 100% { ボックスの影: 6px 8px 12px #e2dede、-6px 8px 12px #e2dede; } } /* 非コアスタイル */ .カードヘッダー{ テキスト配置: 中央; } .card-body、.card-footer { テキスト配置: 左; } </スタイル> <body style="background: #e3e3e3;"> <div class="カードボックスシャドウ"> <div class="カードヘッダー"> <p>これはカードです</p> </div> <div class="カード本体"> <p>説明: マウスをホバーすると紙全体が浮き上がります</p> </div> <div class="カードフッター"> <p>仕組み: @keyframes ルールを使用してアニメーションを作成する</p> </div> </div> </本文> </html> 上記は、マウスをカードの上に置いたときにカードがフローティングする効果を CSS を使用して実現する方法の例の詳細です。マウスをカードの上に置いたときにカードがフローティングする効果を CSS を使用して実現する方法の詳細については、123WORDPRESS.COM の他の関連記事に注目してください。 |
<<: Vue2とVue3のライフサイクルの比較の詳細な理解
>>: Linux での一般的なシェル スクリプト コマンドと関連知識
目次再実行ログディスクデータを直接更新するのではなく、最初にメモリデータを更新する必要があるのはなぜ...
Dockerの場合すべてのコンテナコマンドを開始する docker を起動します $(docker ...
たとえば、次のように入力します。 XML/HTML コードdiv#ページ>(div#ヘッダー&...
目次1. インデックスの基礎知識1.1 インデックスの利点1.2 インデックスの有用性1.3 インデ...
私が最も頻繁に使用するコマンドは次の通りです:選択肢CDギットls ssh須藤数週間前、私はこの R...
1. イベントの簡単な紹介イベントは、MySQL が特定の時間に呼び出す手続き型データベース オブジ...
1. JDKをインストールする1.1 現在の仮想マシン環境にJDKがあるかどうかを確認する rpm ...
この記事では、カレンダー効果を素早く実現するためのJavaScriptの具体的なコードを例として紹介...
この記事では、動的な点と線の効果を実現するためのJavaScriptキャンバスの具体的なコードを参考...
この記事では、MySQL 8.0.13の手動インストールチュートリアルを参考までに紹介します。具体的...
1. 公式サイト http://dev.mysql.com/downloads/mysql/ から ...
目次js の1. グローバルガードを登録する2. Vuex 状態管理グローバルキャッシュルート3. ...
今日は、JavaScript を使用して Web ページ上にプレーヤーを作成する方法を紹介します。誰...
目次1. Dockerイメージ2. 既存のイメージに基づいてインスタンスを作成する3. ローカルテン...
SecureCRT が文字化けした文字を表示する状況を見てみましょう。例えば: ではリセットしてみま...