下線を実現するための CSS3 トランジションの例コード

下線を実現するための CSS3 トランジションの例コード

この記事では、下線を実現するための CSS3 トランジションのサンプル コードを紹介します。このコードは次のように共有されます。

デモはこちらをご覧ください

移行を理解する

これは、アニメーション遷移を実現できる CSS3 で追加された新しいスタイルです。あるスタイルから別のスタイルに移行するための効果を追加するときによく使用されます。

遷移プロパティ

  1. transition: 1 つのプロパティで 4 つの遷移プロパティを設定するために使用されるショートカット プロパティ。
  2. transition-property: トランジションが適用される CSS プロパティの名前を指定します。
  3. transition-duration: トランジション効果にかかる時間を定義します。デフォルトは0です。
  4. transition-timing-function: トランジション効果のタイミング曲線を指定します。デフォルトは「ease」です。
    1. linear: 同じ速度で開始および終了するトランジション効果を指定します (cubic-bezier(0,0,1,1) に相当)
    2. イージー: ゆっくり始まり、その後加速し、そしてゆっくり終わるトランジション効果を指定します (cubic-bezier(0.25,0.1,0.25,1))
    3. easy-in: ゆっくりと始まる遷移効果を指定します (cubic-bezier(0.42,0,1,1) に等しい)
    4. easy-out: ゆっくり終了する遷移効果を指定します (cubic-bezier(0,0,0.58,1) に等しい)
    5. easy-in-out: ゆっくりと開始および終了する遷移効果を指定します (cubic-bezier(0.42,0,0.58,1) に相当)
    6. cubic-bezier(n,n,n,n): cubic-bezier関数で独自の値を定義します。可能な値は0から1までの数値です。
  5. transition-delay: トランジション効果がいつ始まるかを指定します。デフォルトは0です。

transition: width 1s linear 2s; /*省略した例*/

/*以下と同等*/
遷移プロパティ: 幅;
遷移期間: 1秒;
遷移タイミング関数: 線形;
遷移遅延: 2秒;

属性を変換する

  • translate() は、指定された左 (X 軸) と上 (Y 軸) の位置に従って、要素を現在の位置から移動します。
  • rotate() 要素を指定された度数だけ時計回りに回転します。負の値も許可されており、要素は反時計回りに回転します。
  • scale() は、幅 (x 軸) と高さ (y 軸) のパラメータに応じて要素のサイズを拡大または縮小します。
  • skew() には、それぞれ X 軸と Y 軸の傾斜角度を表す 2 つのパラメータ値が含まれます。2 番目のパラメータが空の場合、デフォルト値は 0 です。負のパラメータは、反対方向への傾斜を示します。
  • matrix() マトリックス メソッドには、回転、拡大縮小、移動、傾斜機能を含む 6 つのパラメーターがあります。

必要な効果を達成する

もちろん、ここではコードをそのまま掲載しますが、コード内にはわかりやすいようにコメントも入っています。

/*cssコード*/

h2{
    位置: 相対的;
    パディング: 15px;
    テキスト配置: 中央;    
}
ボタン{
    幅: 100ピクセル;
    高さ: 40px;
    境界線の半径: 15px;
    境界線: なし;
    背景: #188FF7;
    色: #fff;
    アウトライン: なし;
    カーソル: ポインタ;
    フォントの太さ: 太字;
}
ボタン:ホバー{
    背景: #188EA7;
}
。容器{
    幅: 600ピクセル;
    ディスプレイ: フレックス;
    flex-direction: 列;
    アイテムの位置を中央揃えにします。
    マージン: 0 自動;
    
}
。ライン{
    位置: 絶対;
    左: 0;
    下部: 0;
    高さ: 3px;
    幅: 100%;
    遷移: 変換 .5s;
    背景: #188EA7;
    色: #188EA7;
    変換: scaleX(0);
    zインデックス: 1111;            
}

@keyframes changeColor1{
    から{
        色: #000;
    }
    に{
        色: #188EA7;
    }
}
@keyframes changeColor2{
    から{                
        色: #188EA7;
    }
    に{
        色: #000;
    }
}
<!--html コード-->

<div class="コンテナ">
    <h2 id="タイトル">
        Baidu フロントエンド アカデミー<i class="line" id="line"></i>
    </h2>
    <button id="change">変更</button>
</div>
//jsコードの部分(function(){
    btn = document.getElementById('change');
    h2 = document.getElementById('title'); とします。
    line = document.getElementById('line'); とします。
    count = 0 とします。
    btn.onclick = 関数(){
        if(count%2===0){
            line.style.transform = "scaleX(1)";
            h2.style.animation = "changeColor1 1s";
            h2.style.color = "#188EA7";
            カウント++;
        }それ以外{
            ラインスタイル変換 = "スケールX(0)";
            h2.style.animation = "changeColor2 1s";
            h2.style.color = "#000";
            カウント++;
        }
        
    }
})();

要約する

これまで、この効果について十分に説明し、CSS3 の transition プロパティと tranform プロパティについても学習しました。もちろん、このアニメーションを完成させるには、HTML と CSS の基本知識も必要です。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

<<:  Dockerディスク容量不足の問題を解決する

>>:  一般的な XHTML タグの紹介

推薦する

Docker環境でJenkinsを設定すると、タスクをビルドするときにコンソールログに文字化けした中国語の文字が表示されます

目次1. 問題の説明: 2. Jenkins設定のトラブルシューティング3. コードログのエンコード...

Vueは小さな検索機能を実装する

この記事の例では、検索機能を実装するためのVueの具体的なコードを参考までに共有しています。具体的な...

シンプルな画像切り替えを実現するJavaScript

この記事では、JavaScriptで簡単な画像切り替えを実現するための具体的なコードを参考までに紹介...

Windows システムに VirtualBox と Ubuntu 16.04 をインストールするための詳細なチュートリアル

1. ソフトウェアの紹介バーチャルボックスVirtualBox は、無料のオープンソース仮想マシン ...

Linuxで権限が拒否された場合の解決策の詳細な説明

許可が拒否されました:その理由は、ファイルの読み取り、書き込み、作成、削除などの権限がないためです。...

React+Typescriptはカウントダウンフックメソッドを実装します

まず、setIntervalはフックとしてカプセル化されます👇 'react' から...

Vueはvue-quill-editorリッチテキストエディタを使用し、画像をサーバーにアップロードします。

目次1. 準備2. グローバルコンポーネント quill-editor を定義する1. テンプレート...

JavaScript が Jingdong の虫眼鏡の特殊効果を模倣

この記事では、Jingdong虫眼鏡を模倣したJavaScriptの具体的なコードを参考までに共有し...

VueとReactの詳細

目次1. パノラマII. 背景1. 反応: プロフェッショナル2. ビュー: 凡例3. 技術的な思考...

jsでライトスイッチの効果を実現

この記事の例では、ライトスイッチ効果を実現するためのjsの具体的なコードを参考までに共有しています。...

グループフィールドを 1 行に書き込むための mysql group_concat メソッドの例

この記事では、MySQL group_concat を使用してグループ化されたフィールドを 1 つの...

MySQL シリーズ 11 ログ

チュートリアルシリーズMySQL シリーズ: MySQL リレーショナル データベースの基本概念My...

@media レスポンシブ CSS を使用してさまざまな画面に適応する例

定義と使用@media クエリを使用すると、さまざまなメディア タイプに異なるスタイルを定義できます...

DockerプライベートライブラリHarborのアーキテクチャとコンポーネントの説明

この記事では、Harbor アーキテクチャの構成と、実行時に各コンポーネントを使用する方法について説...

Vue はグラフィック検証コードログインを実装します

この記事では、グラフィック認証コードログインを実装するためのVueの具体的なコードを参考までに紹介し...