純粋なCSSを使用してスイッチ効果を実現する

純粋なCSSを使用してスイッチ効果を実現する

まずアイデアは

この効果を実現するには、 <input type="checkbox">タグを使用します。

チェックボックスのチェック済みおよび未チェックのプロパティは、スイッチのオンおよびオフのプロパティと正確に対応します。

on: オンにする off: オフにする

<ラベル>
  <入力タイプ="チェックボックス" id="ck2">
  <span>選択されていない場合はスイッチをオフにします</span>
</ラベル>
<br>
<ラベル="ck1">
  <input type="checkbox" id="ck1" チェック済み>
  <span>選択した場合はスイッチをオンにします</span>
</ラベル> 

オフとオンの状態をスケッチし始める

ここでは、位置指定が位置を使用して実現されることを説明します。理解できない場合は、MDN を開いて関連する知識を参照できます。

<P>オフステートスケッチ</P>
<div class="toggle">
  <div class="cookie"></div>
</div>
<br>
<P>州のスケッチについて</P>
<div class="toggle2">
  <div class="cookie2"></div>
</div>
。トグル{
  表示:インラインブロック;
  位置:相対;
  高さ:25px;
  幅:50px;  
  境界線の半径:4px;
  背景:#CC0000;
}
。クッキー{
  位置:絶対;
  左:2px;
  上:2px;
  下:2px;
  幅:50%;
  背景:rgba(230,230,230,0.9);
  境界線の半径:3px;
}
.toggle2{
  表示:インラインブロック;
  位置:相対;
  高さ:25px;
  幅:50px; 
  パディング:2px;
  境界線の半径:4px;
  背景:#66CC33;  
}
.クッキー2{
  位置:絶対;
  右:2px;
  上:2px;
  下:2px;  
  幅:50%;
  背景:rgba(230,230,230,0.9);
  境界線の半径:3px;
} 

そして、この2つのスケッチをラベルに貼り付けます

<ラベル="ck4">
  <入力タイプ="チェックボックス" id="ck4">
  <div class="toggle">
    <div class="cookie"></div>
  </div>
</ラベル>
<br>
<ラベル>
  <input type="checkbox" id="ck3" チェック済み>
  <div class="toggle2">
    <div class="cookie2"></div>
  </div>
</ラベル> 

ラベルとチェックボックスを組み合わせてCSSを整理し最適化する

<ラベル>
  <入力タイプ="チェックボックス" id="ck5">
  <div class="toggle-finish">
    <div class="cookie-finish"></div>
  </div>
</ラベル>
<br>
<ラベル="ck6">
  <input type="checkbox" id="ck6" チェック済み>
  <div class="toggle-finish">
    <div class="cookie-finish"></div>
  </div>
</ラベル>
.toggle-finish{
  カーソル:ポインタ;
  表示:インラインブロック;
  位置:相対;
  高さ:25px;
  幅:50px;  
  境界線の半径:4px;
  背景:#CC0000;
}
.クッキー終了{
  位置:絶対;
  左:2px;
  上:2px;
  下:2px;
  幅:50%;
  背景:rgba(230,230,230,0.9);
  境界線の半径:3px;
}
入力:チェック済み + .toggle-finish{
  背景:#66CC33;  
}
入力:チェック済み + .toggle-finish .cookie-finish{ 
  左:自動;
  右:2px;
} 

ここまででスイッチの機能は基本的に実現できました。入力を非表示にすることを忘れないようにしてください。

https://codepen.io/Ritr/pen/W... をクリックしてプレビューできます。

さらに、アニメーションバージョンも最適化しました

https://codepen.io/Ritr/pen/L...

要約する

上記は、純粋な CSS を使用してスイッチ効果を実現する方法について紹介したものです。お役に立てば幸いです。ご質問がある場合は、メッセージを残してください。すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。
この記事が役に立ったと思われた方は、ぜひ転載していただき、出典を明記してください。ありがとうございます!

<<:  MySQL Shellの紹介とインストール

>>:  DockerはGitを使用してJenkinsのリリースとテストプロジェクトの詳細なプロセスを実装します

推薦する

CSS マスクを使用して PNG 画像のサイズを大幅に最適化します (推奨)

この記事は共有および集約することを歓迎します。全文を転載する必要はありません。著作権を尊重してくださ...

MySQL 5.7.18 でパスワードを変更する方法

MySQL 5.7.18 でパスワードを変更する方法: 1. まずMySQLサーバーをシャットダウン...

各 Nginx プロセスで開くことができるファイルの最大数を設定する方法

1. システム内で開いているファイルの最大数を確認する #現在のリソース制限設定を表示する ulim...

Centos7 で mysqldump を使用して MySQL データベースの毎日の自動バックアップを作成する

1. 要件:データベースのバックアップは、実稼働環境にとって特に重要です。データベースのバックアップ...

MySQLで重複データを削除する詳細な例

MySQLで重複データを削除する詳細な例重複レコードには 2 つの意味があります。1 つは完全に重複...

自動ヘルスレポートを実現するDocker+Selenium方式

この記事では、ある大学の健康報告システムを例に、Web 側の自動化操作を完成させます。使用したテクノ...

Vue はデータの変更をどのように追跡しますか?

目次背景例誤解 - コールスタックを表示するためにウォッチでブレークポイントを設定する正しいアプロー...

JavaScript のクロージャの問題の詳細な説明

クロージャは、純粋関数型プログラミング言語の伝統的な機能の 1 つです。クロージャをコア言語構造の不...

MySQL 5.7.20 圧縮版のダウンロードとインストールの簡単なチュートリアル

1. ダウンロードアドレス:参考: http://dev.mysql.com/downloads/m...

Node.js+expressメッセージボード機能実装例

目次メッセージボード必要なライブラリオープンソースプロジェクトプロジェクト構造メッセージボードnod...

MySQL トランザクション制御フローと ACID 特性

目次1. ACIDの特性トランザクション制御構文3. トランザクション同時実行例外1. ダーティリー...

CentOS7 構成 Alibaba Cloud yum ソースメソッドコード

Centos yumフォルダを開くコマンドcd /etc/yum.repos.d/を入力します。 w...

JavaScript関数導入の詳しい説明

目次機能紹介関数関数の作成コンストラクタは関数を作成する関数宣言は関数を作成する関数式関数を作成する...

Web面接におけるJS事前解析と変数プロモーションの違い

目次事前分析とは何ですか?変数と関数の準備の違いvar 変数の繰り返し宣言変数と関数の昇格の優先順位...

JavaScript のショートカットのヒント

目次1. 配列を結合する2. 配列をマージする(最初に) 3. 配列の複製4. 構造化分解割り当て5...