CSS3で実装された6つの境界遷移効果

CSS3で実装された6つの境界遷移効果

6つの効果

実装コード

html

<h1>CSS 境界遷移</h1>

<セクションクラス="ボタン">
  <button class="draw">描画</button>

  <button class="draw meet">ドローミート</button>

  <button class="center">中央</button>

  <button class="spin">スピン</button>

  <button class="spin circle">スピンサークル</button>

  <button class="spin thick">スピン シック</button>
</セクション>

CSS3

ボタン {
  背景: なし;
  境界線: 0;
  ボックスのサイズ: 境界線ボックス;
  余白: 1em;
  パディング: 1em 2em;
  ボックスシャドウ: インセット 0 0 0 2px #f45e61;
  色: #f45e61;
  フォントサイズ: 継承;
  フォントの太さ: 700;
  位置: 相対的;
  垂直位置合わせ: 中央;
}
ボタン::前、ボタン::後 {
  ボックスサイズ: 継承;
  コンテンツ: "";
  位置: 絶対;
  幅: 100%;
  高さ: 100%;
}

。描く {
  トランジション: カラー 0.25 秒;
}
.draw::before、.draw::after {
  境界線: 2px 透明実線;
  幅: 0;
  高さ: 0;
}
.draw::before {
  上: 0;
  左: 0;
}
.draw::after {
  下部: 0;
  右: 0;
}
.draw:hover {
  色: #60daaa;
}
.draw:hover::before、.draw:hover::after {
  幅: 100%;
  高さ: 100%;
}
.draw:hover::before {
  上の境界線の色: #60daaa;
  右境界線の色: #60daaa;
  遷移: 幅 0.25 秒のイーズアウト、高さ 0.25 秒のイーズアウト 0.25 秒。
}
.draw:hover::after {
  境界線下部の色: #60daaa;
  左境界線の色: #60daaa;
  遷移: border-color 0s、ease-out 0.5s、width 0.25s、ease-out 0.5s、height 0.25s、ease-out 0.75s;
}

.meet:hover {
  色: #fbca67;
}
.meet::after {
  上: 0;
  左: 0;
}
.meet:hover::before {
  上の境界線の色: #fbca67;
  右境界線の色: #fbca67;
}
.meet:hover::after {
  境界線下部の色: #fbca67;
  左境界線の色: #fbca67;
  遷移: 高さ 0.25 秒のイーズアウト、幅 0.25 秒のイーズアウト 0.25 秒。
}

.center:hover {
  色: #6477b9;
}
.center::before、.center::after {
  上: 0;
  左: 0;
  高さ: 100%;
  幅: 100%;
  変換の原点: 中心;
}
.center::before {
  上境界線: 2px 実線 #6477b9;
  下境界線: 2px 実線 #6477b9;
  変換: scale3d(0, 1, 1);
}
.center::after {
  左境界線: 2px 実線 #6477b9;
  右境界線: 2px 実線 #6477b9;
  変換: scale3d(1, 0, 1);
}
.center:hover::before、.center:hover::after {
  変換: scale3d(1, 1, 1);
  遷移: 0.5 秒を変換します。
}

.スピン{
  幅: 5em;
  高さ: 5em;
  パディング: 0;
}
.spin:hover {
  色: #0eb7da;
}
.spin::before、.spin::after {
  上: 0;
  左: 0;
}
.spin::before {
  境界線: 2px 透明実線;
}
.spin:hover::before {
  上の境界線の色: #0eb7da;
  右境界線の色: #0eb7da;
  境界線下部の色: #0eb7da;
  遷移: border-top-color 0.15s 線形、border-right-color 0.15s 線形 0.1s、border-bottom-color 0.15s 線形 0.2s。
}
.spin::after {
  境界線: 0 透明;
}
.spin:hover::after {
  上境界線: 2px 実線 #0eb7da;
  左境界線の幅: 2px;
  右境界線の幅: 2px;
  変換: 回転(270度);
  遷移: transform 0.4s linear 0s、border-left-width 0s linear 0.35s;
}

。丸 {
  境界線の半径: 100%;
  ボックスシャドウ: なし;
}
.circle::before、.circle::after {
  境界線の半径: 100%;
}

。厚い {
  色: #f45e61;
}
.thick:hover {
  色: #fff;
  フォントの太さ: 700;
}
.thick::before {
  境界線: 2.5em 透明実線;
  Zインデックス: -1;
}
.thick::after {
  ミックスブレンドモード: カラードッジ;
  Zインデックス: -1;
}
.thick:hover::before {
  背景: #f45e61;
  上の境界線の色: #f45e61;
  右境界線の色: #f45e61;
  境界線の下の色: #f45e61;
  遷移: 背景 0 秒 線形 0.4 秒、境界上部の色 0.15 秒 線形、境界右色 0.15 秒 線形 0.15 秒、境界下部の色 0.15 秒 線形 0.25 秒。
}
.thick:hover::after {
  上ボーダー: 2.5em 実線 #f45e61;
  左ボーダーの幅: 2.5em;
  右ボーダーの幅: 2.5em;
}

/* ページのスタイル */
html{
  背景: #fefefe;
}

体 {
  背景: #fefefe;
  色: #4b507a;
  フォント: 300 24px/1.5 Lato、サンセリフ;
  マージン: 1em 自動;
  最大幅: 36em;
  パディング: 1em 1em 2em;
  テキスト配置: 中央;
}

.ボタン{
  分離:隔離する;
}

h1 {
  フォントの太さ: 300;
  フォントサイズ: 2.5em;
}

以上がCSS3で実装された6つの境界遷移効果の詳細です。CSS3境界遷移の詳細については、123WORDPRESS.COMの他の関連記事にも注目してください。

<<:  ブルートフォース攻撃を防ぐためのシェルスクリプト設定

>>:  WeChatアプレットでvantフレームワークを使用するための具体的な手順

推薦する

ウェブページを白黒に変換します(Google、Firefox、IE、その他のブラウザと互換性があります)

CSSファイルに書き込むコードをコピーコードは次のとおりです。 01.html {グレイスケール(1...

jQueryチェーン呼び出しの詳細な説明

目次チェーン呼び出し小さなケースチェーン呼び出しjQuery オブジェクトが任意のメソッド (ノード...

Linuxにソフトウェアをインストールするいくつかの方法の詳細な説明

1. RPM パッケージのインストール手順: 1. soft.version.rpm などの対応する...

TypeScript の条件型に関する詳細な読書と実践記録

目次ジェネリック型での条件型の使用ツールタイプ脱出ポッド矢印関数で条件型を使用する型推論による条件型...

MySQLでよく使われる4つのストレージエンジンについて簡単に説明します。

よく使われる4つのMySQLエンジンの紹介(1):MyISAMストレージエンジン:トランザクションや...

CSS3 タブアニメーションの例 背景切り替えの動的効果

CSS 3 アニメーションの例 - タブの背景切り替えの動的効果、具体的なコードは次のとおりです。 ...

Vue.js アプリケーションのパフォーマンス最適化分析 + ソリューション

目次1. はじめに2. Vue JS のパフォーマンス最適化が必要な理由は何ですか? 3. Vueの...

CSSの2つの特別な値は、カスケードの継承と初期メソッドを制御するために使用されます。

カスケードを制御するために CSS の任意のプロパティに割り当てることができる特別な値が 2 つあり...

ウェブフロントエンドに対する一般的な攻撃とその防止方法

ウェブサイトのフロントエンド開発で発生するセキュリティ問題は、クライアントブラウザで実行されるコード...

Html+CSS 描画三角形アイコン

まずはレンダリングを見てみましょう: XML/HTML コードコンテンツをクリップボードにコピー&l...

MySQL の concat 関数についての簡単な説明。MySQL でフィールドの前または後に文字列を追加する方法

MySQL で concat 関数を使用する方法: CONCAT(文字列1、文字列2、…)戻り値は、...

HTML における if 判断の使用

Django Web開発の過程で、HTMLを書く際にバックエンドから同じ名前のリスト変数が渡されるが...

Vue+SpringBoot のフロントエンドとバックエンドの分離におけるクロスドメインの問題

フロントエンドとバックエンドを分離した開発では、フロントエンドがバックエンドの API を呼び出して...

jsを使用して動的な背景を実現する

この記事の例では、動的な背景を実現するためのjsの具体的なコードを参考までに共有しています。具体的な...

LinuxにNginxをインストールする詳細な手順

1. Nginxのインストール手順1.1 公式サイトの紹介http://nginx.org/en/d...