UI / 090

Toggle switch

切り替えスイッチ
チェックボックスをスイッチとして見せ、状態を切り替えます。

実際のHTML・CSSで描かれた見本です。

ラボで詳しく試す ↗

ひとつ試すなら

状態の違いを目で確かめる

こんなときに

有効・無効を切り替える設定。

仕組みと使い方

見た目を変えても、入力要素とラベルの関係を保ちます。

スイッチtoggleオンオフ設定
実装コードを見る
<style>
.sample{width:100%;height:100%;min-height:190px;display:grid;place-items:center;position:relative;overflow:hidden;box-sizing:border-box;font-family:Arial,'Hiragino Kaku Gothic ProN',Meiryo,sans-serif;color:#20211d;background:#f1f0e9;padding:22px}.sample *{box-sizing:border-box}.sample button,.sample input,.sample summary{font:inherit}.sample button,.sample summary,.sample label{touch-action:manipulation}.sample :focus-visible{outline:3px solid #6050bf;outline-offset:5px}.sample small{font-size:10px;line-height:1.5}.sample .editable{margin:0}.sample svg{max-width:100%;height:auto}
.sample .switch{display:flex;gap:14px;align-items:center;cursor:pointer;font-size:13px}.sample input{position:absolute;opacity:0;width:64px;height:36px}.sample .track{width:64px;height:36px;border-radius:50px;background:#c6c7bd;position:relative;transition:background .2s}.sample .track:before{content:"";position:absolute;left:4px;top:4px;width:28px;height:28px;border-radius:50%;background:white;transition:transform .2s}.sample input:checked+.track{background:#768f25}.sample input:checked+.track:before{transform:translateX(28px)}.sample input:focus-visible+.track{outline:3px solid #6050bf;outline-offset:4px}
</style>
<div class="sample">
<label class="switch"><input type="checkbox" aria-label="サンプル設定を有効にする"><span class="track"></span><b>試してみる</b></label>
</div>