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フレームワークを使用するための具体的な手順

推薦する

JavaScript 配列を走査する 5 つの方法

目次1. forループ: 基本的でシンプル2. forEach() メソッド: コールバック関数の使...

Vueはカルーセルアニメーションを実装します

この記事では、カルーセルアニメーションを実現するためのVueの具体的なコードを例として紹介します。具...

CentOS に Redis と MySQL をインストールする

1|0MySQL(MariaDB) 1|11. 説明MariaDB データベース管理システムは My...

MySQL フィールドで NOT NULL を使用する必要があるのはなぜですか?

私は最近新しい会社に入社したのですが、データベース設計にいくつか小さな問題があることに気付きました。...

SpringBoot のパッケージ化と Docker へのアップロード、およびマルチインスタンス デプロイメントの実装に関する簡単な分析 (IDEA バージョン)

最近友人からDockerを触ったことがあるかと聞かれました。あまり自信がなかったので答えられませんで...

jsでユーザー登録機能を実装する

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

シェルスクリプトを使用したMySQLデータベースの自動バックアップ

シェルスクリプトを使用したMySQLデータベースの自動バックアップデータベースを頻繁にバックアップす...

HTML5+CSS3 ヘッダー作成例と更新

前回、私たちは 2 つのヘッダー レイアウト (フレックスボックス 1 つとフロート 1 つ) を考...

Windows Server 2016 リモート デスクトップ サービスを展開するためのクイック スタート ガイド

現在、2016サーバーは、win2008や2012よりも優れたマルチサイトhttpsサービスをサポー...

IE6 で幅と高さがおかしいバグ

図に示すように: しかし、IE6で表示すると、right:1px:になります。 IE6 には、幅と高...

Docker に共通コンポーネント (mysql、redis) をインストールする方法

Dockerはmysqlをインストールします docker search mysql 検索 dock...

MySQL の null と not null、null と空の値の違いの詳細な説明 ''''

MySQL を長い間使用してきた多くの人は、これら 2 つのフィールド属性の概念をまだよく理解して...

Linux学習におけるmkdirコマンドの詳しい説明

目次序文1. ファイルの概念に関する基礎知識2. mkdir コマンド序文最近、Linux にますま...

Vue2で配列の変更を検出できない理由と解決策

目次回避策Vue2.0 で 2 つの配列の変更を監視できないのはなぜですか?ソースコード分析ヴュー3...

MySQL からエクスポートされた scv ファイル内の文字化けやジャンプ行の問題をすばやく解決します

仕事上の理由により、完全なオンライン化(​​つまり、すべてのデータがオンラインで完了し、インポートや...