CSS3 ベジェ曲線の例: リンクホバーアニメーション効果の作成

CSS3 ベジェ曲線の例: リンクホバーアニメーション効果の作成

CSS3 アニメーション トランジションを使用して、リンクの上にマウスを移動すると小さなポップアップが表示される、シンプルでありながら魅力的なリンク ホバー効果を作成します。

また、CSS3 キュービックベジェ曲線についても見ていきます。これは、ポップアップに硬直した機械的な動きではなく、より滑らかな動きを与える CSS トランジションです。

これが最終結果です:

さあ始めましょう!

HTML部分

これはリンクの HTML です。アイコンは iconfont.cn からのものです。

<div class="コンテナ">
  <セクション>
    <a href="#">
      <i class="fab fa-instagram"></i>
      インスタグラム
    </a>
    <a href="#">
      <i class="fab fa-github"></i>
      ギットハブ
    </a>
  </セクション>
</div>

リンクの上にマウスを置くと、span タグがポップアップ表示されます。次に、CSS に移ります。

CSS スタイルとアニメーション

両方のリンクが画面の中央に表示されるように、div コンテナーを中央に配置します。これにより、リンクの上部から小さなポップアップがポップアップ表示されるため、小さなポップアップのアニメーション化も簡単になります。

div.コンテナ{
  表示: インラインブロック;
  位置: 絶対;
  上位: 50%;
  左: 50%;
  -ms-transform: 変換(-50%、-50%);
  -webkit-transform: translate(-50%, -50%);
  変換: translate(-50%, -50%);
}

次に、リンクのスタイルを設定し、シンプルな背景ホバー効果を作成し、ソーシャル メディア アイコンを配置します。

{
  色: #fff;
  背景: #8a938b;
  境界線の半径: 4px;
  テキスト配置: 中央;
  テキスト装飾: なし;
  位置: 相対的;
  表示: インラインブロック;
  幅: 120ピクセル;
  高さ: 100px;
  上部パディング: 12px;
  マージン: 0 2px;
  -o-transition: すべて 0.5 秒;
  -webkit-transition: すべて 0.5 秒;
  -moz-transition: すべて 0.5 秒;
  遷移: すべて 0.5 秒;
  -webkit-font-smoothing: アンチエイリアス;
}
ホバー{
  背景: #5a665e;
}
私 {
  フォントサイズ: 45px;
  垂直位置合わせ: 中央;
  表示: インラインブロック;
  位置: 相対的;
  上位: 20%
}

次に、ポップアップ テキストのスタイルを設定してアニメーション化します。

スパンの
  色: #666;
  位置: 絶対;
  フォントファミリー: 「Chelsea Market」、筆記体;
  下部: 0;
  左: -15px;
  右: -15px;
  パディング: 15px 7px;
  Zインデックス: -1;
  フォントサイズ: 14px;
  境界線の半径: 5px;
  背景: #fff;
  可視性: 非表示;
  不透明度: 0;
  -o-transition: すべて 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  -webkit-transition: すべて 0.5 秒 cubic-bezier(0.68, -0.55, 0.265, 1.55);
  -moz-transition: すべて 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  遷移: すべて 0.5 秒 cubic-bezier(0.68, -0.55, 0.265, 1.55);
} /* アイコンがホバー状態になると、テキストがポップアップ表示されます */
a:hover スパン {
  下部: 130px;
  可視性: 可視;
  不透明度: 1;
}

CSS3 3 次ベジェ曲線は、4 つの点 p0、p1、p2、p3 によって定義されます。点 p0 は曲線の開始点であり、点 p3 は曲線の終了点です。曲線が直線的であればあるほど、動きは硬くなり(滑らかさが失われ)、

ある点が正で始まり、次の点が負の場合、最初は動きが遅くなります。ポイント値が前のポイント値よりも高くなると、動きが速くなります。

これは CSS における 3 次ベジェ点の意味です。アニメーションが短いので動きは微妙です。ポップアップは正方形の下部からゆっくりと始まり、上部に向かって速度を上げていきます。

3 次ベジェ曲線遷移なしでアニメーションを作成することもできますが、アニメーションの違いは次のとおりです。

3次ベジェ曲線遷移アニメーション

3次ベジェ曲線遷移アニメーションなし

ご覧のとおり、アニメーションによりホバー効果に活気が加わります。

最後の CSS セットでは、ポップアップの下部にある小さな矢印のスタイルを設定します。 CSS で三角形を作成する方法について詳しくは、この CSS トリックの記事をご覧ください。

要約する

ミニマルなボタンスタイルのリンクを作成しました。リンクには基本的な背景ホバー効果がありますが、それだけではありません。リンクのテキストを表示するための小さなポップアップ ボックスを追加しました。 CSS3 3 次ベジェ曲線の助けにより、アニメーションはスムーズで心地よいものになります。

この種の知識は、ソーシャル メディア アカウントが表示される Web サイトのデザインの一部として非常に役立ちます。

この記事のサンプルデモと完全なコードについては、次のアドレスをご覧ください。PC で https://coding.zhanbing.site を開くことをお勧めします。

上記は、CSS3 ベジェ曲線の例の詳細です。リンクホバーアニメーション効果を作成します。CSS3 ベジェ曲線の詳細については、123WORDPRESS.COM の他の関連記事に注目してください。

<<:  さまざまな解像度やブラウザでウェブページを適切に表示する方法

>>:  SQL 実践演習: オンライン モール データベース ユーザー情報データ操作

推薦する

画像カルーセルを実装するためのネイティブJS 小さな広告プラグインを実装するためのJS

最近、ネイティブ JS を使用して、さらにいくつかの小さな機能を実装したいと思っています。現在、ブロ...

MySQL PHP 構文の簡単な分析

まずcharAt関数の基本的な構文を見てみましょう文字 = str.charAt(インデックス) c...

Element における複数データ読み込み最適化の実装

目次シナリオコードの実装要約:シナリオ最近、ElementUI をベースにしたバックグラウンド管理シ...

MySQL レプリケーション テーブルの詳細とサンプル コード

MySQL レプリケーション テーブルの詳細な説明テーブル構造、インデックス、デフォルト値などを含む...

ミニマルなウェブサイトデザインの例

Web アプリケーション クラス1. みんなのためにダウンまたは私だけのためにこのウェブサイトは、ウ...

MySQL マスタースレーブレプリケーション 読み書き分離の設定方法の詳細説明

1. 説明前回は、MySQL のインストールと構成、MySQL ステートメントの使用、MySQL デ...

HTML と埋め込み Flash の両方におけるスクロールバーの分析と処理

開発を行う際に、次のような状況に遭遇することがよくあります。 a.swf が Web ページに追加さ...

TypeScript 開発のための 6 つの実用的なヒント

目次1. 開発前にエンティティの種類を決定する2. インターフェースをリクエストするときは、使用する...

CSS3 クリアフロートメソッドの例

1. 目的この記事を通じて、誰もがフロートをクリアする原理と方法を理解し、最終的にこの記事が最良であ...

PHP で JSON バックスラッシュを削除する例

1. 「stripslashes($_POST['json']);」メソッドを使用し...

Docker の 4 つのネットワーク タイプの主な例

4 つのネットワーク タイプ:なし: コンテナのネットワーク機能を一切設定しません。--net=no...

CSS 共通スタイルで二重矢印を描画するサンプルコード

1. 単一の矢印への複数の呼び出し単一の矢印を実装したら、二重矢印を実装するのは簡単です。上では、単...

Dockerでmysqlのルートパスワードを変更する方法

最初のステップはmysqlコンテナを作成することです docker exec -it コンテナID ...

jQueryはシンプルなコメントエリアを実装します

この記事では、参考までに、簡単なコメントエリアを実装するためのjQueryの具体的なコードを紹介しま...

Vueはファイルのアップロードとダウンロード機能を実装します

この記事では、ファイルのアップロードとダウンロード機能を実装するためのVueの具体的なコードを例とし...