html检测按钮的状态,5种纯CSS状态切换按钮开关css3.html

5种纯CSS状态切换按钮开关

html,

body {

background-color: #272727;

display: -webkit-box;

display: -ms-flexbox;

display: flex;

min-height: 100%;

-webkit-box-pack: center;

-ms-flex-pack: center;

justify-content: center;

-webkit-box-align: center;

-ms-flex-align: center;

align-items: center;

-webkit-box-orient: vertical;

-webkit-box-direction: normal;

-ms-flex-direction: column;

flex-direction: column;

font-family: 'Microsoft YaHei', 'Lantinghei SC', 'Open Sans', Arial, 'Hiragino Sans GB', 'STHeiti', 'WenQuanYi Micro Hei', 'SimSun', sans-serif;

}

ul,

li {

list-style: none;

margin: 0;

padding: 0;

}

.tg-list {

text-align: center;

display: -webkit-box;

display: -ms-flexbox;

display: flex;

-webkit-box-align: center;

-ms-flex-align: center;

align-items: center;

}

.tg-list-item {

margin: 0 2em;

}

h2 {

color: #777;

}

h4 {

color: #999;

}

.tgl {

display: none;

}

.tgl,

.tgl:after,

.tgl:before,

.tgl *,

.tgl *:after,

.tgl *:before,

.tgl+.tgl-btn {

box-sizing: border-box;

}

.tgl::-moz-selection,

.tgl:after::-moz-selection,

.tgl:before::-moz-selection,

.tgl *::-moz-selection,

.tgl *:after::-moz-selection,

.tgl *:before::-moz-selection,

.tgl+.tgl-btn::-moz-selection {

background: none;

}

.tgl::selection,

.tgl:after::selection,

.tgl:before::selection,

.tgl *::selection,

.tgl *:after::selection,

.tgl *:before::selection,

.tgl+.tgl-btn::selection {

background: none;

}

.tgl+.tgl-btn {

outline: 0;

display: block;

width: 4em;

height: 2em;

position: relative;

cursor: pointer;

-webkit-user-select: none;

-moz-user-select: none;

-ms-user-select: none;

user-select: none;

}

.tgl+.tgl-btn:after,

.tgl+.tgl-btn:before {

position: relative;

display: block;

content: "";

width: 50%;

height: 100%;

}

.tgl+.tgl-btn:after {

left: 0;

}

.tgl+.tgl-btn:before {

display: none;

}

.tgl:checked+.tgl-btn:after {

left: 50%;

}

.tgl-light+.tgl-btn {

background: #f0f0f0;

border-radius: 2em;

padding: 2px;

-webkit-transition: all .4s ease;

transition: all .4s ease;

}

.tgl-light+.tgl-btn:after {

border-radius: 50%;

background: #fff;

-webkit-transition: all .2s ease;

transition: all .2s ease;

}

.tgl-light:checked+.tgl-btn {

background: #9FD6AE;

}

.tgl-ios+.tgl-btn {

background: #fbfbfb;

border-radius: 2em;

padding: 2px;

-webkit-transition: all .4s ease;

transition: all .4s ease;

border: 1px solid #e8eae9;

}

.tgl-ios+.tgl-btn:after {

border-radius: 2em;

background: #fbfbfb;

-webkit-transition: left 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275), padding 0.3s ease, margin 0.3s ease;

transition: left 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275), padding 0.3s ease, margin 0.3s ease;

box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1), 0 4px 0 rgba(0, 0, 0, 0.08);

}

.tgl-ios+.tgl-btn:hover:after {

will-change: padding;

}

.tgl-ios+.tgl-btn:active {

box-shadow: inset 0 0 0 2em #e8eae9;

}

.tgl-ios+.tgl-btn:active:after {

padding-right: .8em;

}

.tgl-ios:checked+.tgl-btn {

background: #86d993;

}

.tgl-ios:checked+.tgl-btn:active {

box-shadow: none;

}

.tgl-ios:checked+.tgl-btn:active:after {

margin-left: -.8em;

}

.tgl-skewed+.tgl-btn {

overflow: hidden;

-webkit-transform: skew(-10deg);

transform: skew(-10deg);

-webkit-backface-visibility: hidden;

backface-visibility: hidden;

-webkit-transition: all .2s ease;

transition: all .2s ease;

background: #888;

}

.tgl-skewed+.tgl-btn:after,

.tgl-skewed+.tgl-btn:before {

-webkit-transform: skew(10deg);

transform: skew(10deg);

display: inline-block;

-webkit-transition: all .2s ease;

transition: all .2s ease;

width: 100%;

text-align: center;

position: absolute;

line-height: 2em;

font-weight: bold;

color: #fff;

text-shadow: 0 1px 0 rgba(0, 0, 0, 0.4);

}

.tgl-skewed+.tgl-btn:after {

left: 100%;

content: attr(data-tg-on);

}

.tgl-skewed+.tgl-btn:before {

left: 0;

content: attr(data-tg-off);

}

.tgl-skewed+.tgl-btn:active {

background: #888;

}

.tgl-skewed+.tgl-btn:active:before {

left: -10%;

}

.tgl-skewed:checked+.tgl-btn {

background: #86d993;

}

.tgl-skewed:checked+.tgl-btn:before {

left: -100%;

}

.tgl-skewed:checked+.tgl-btn:after {

left: 0;

}

.tgl-skewed:checked+.tgl-btn:active:after {

left: 10%;

}

.tgl-flat+.tgl-btn {

padding: 2px;

-webkit-transition: all .2s ease;

transition: all .2s ease;

background: #fff;

border: 4px solid #f2f2f2;

border-radius: 2em;

}

.tgl-flat+.tgl-btn:after {

-webkit-transition: all .2s ease;

transition: all .2s ease;

background: #f2f2f2;

content: "";

border-radius: 1em;

}

.tgl-flat:checked+.tgl-btn {

border: 4px solid #7FC6A6;

}

.tgl-flat:checked+.tgl-btn:after {

left: 50%;

background: #7FC6A6;

}

.tgl-flip+.tgl-btn {

padding: 2px;

-webkit-transition: all .2s ease;

transition: all .2s ease;

-webkit-perspective: 100px;

perspective: 100px;

}

.tgl-flip+.tgl-btn:after,

.tgl-flip+.tgl-btn:before {

display: inline-block;

-webkit-transition: all .4s ease;

transition: all .4s ease;

width: 100%;

text-align: center;

position: absolute;

line-height: 2em;

font-weight: bold;

color: #fff;

position: absolute;

top: 0;

left: 0;

-webkit-backface-visibility: hidden;

backface-visibility: hidden;

border-radius: 4px;

}

.tgl-flip+.tgl-btn:after {

content: attr(data-tg-on);

background: #02C66F;

-webkit-transform: rotateY(-180deg);

transform: rotateY(-180deg);

}

.tgl-flip+.tgl-btn:before {

background: #FF3A19;

content: attr(data-tg-off);

}

.tgl-flip+.tgl-btn:active:before {

-webkit-transform: rotateY(-20deg);

transform: rotateY(-20deg);

}

.tgl-flip:checked+.tgl-btn:before {

-webkit-transform: rotateY(180deg);

transform: rotateY(180deg);

}

.tgl-flip:checked+.tgl-btn:after {

-webkit-transform: rotateY(0);

transform: rotateY(0);

left: 0;

background: #7FC6A6;

}

.tgl-flip:checked+.tgl-btn:active:after {

-webkit-transform: rotateY(20deg);

transform: rotateY(20deg);

}

5种纯CSS状态切换按钮开关

  • 轻亮
  • 苹果
  • 倾斜
  • 扁平
  • 翻转

一键复制

编辑

Web IDE

原始数据

按行查看

历史

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是一个简单的CSS3昼夜背景切换开关特效,包括8种选项开关切换特效: ```html <!DOCTYPE html> <html> <head> <title>CSS3昼夜背景切换开关特效</title> <style type="text/css"> body { background-color: #f6f6f6; color: #333; font-family: Arial, sans-serif; font-size: 16px; line-height: 1.5; margin: 0; padding: 0; } .switch { position: relative; display: inline-block; width: 60px; height: 34px; } .switch input { display: none; } .slider { position: absolute; cursor: pointer; top: 0; left: 0; right: 0; bottom: 0; background-color: #ccc; transition: .4s; } .slider:before { position: absolute; content: ""; height: 26px; width: 26px; left: 4px; bottom: 4px; background-color: #fff; transition: .4s; } input:checked + .slider { background-color: #2196F3; } input:focus + .slider { box-shadow: 0 0 1px #2196F3; } input:checked + .slider:before { transform: translateX(26px); background-color: #fff; content: url(sun.png); } .slider.round { border-radius: 34px; } .slider.round:before { border-radius: 50%; } input:checked + .slider:before { transform: translateX(26px); content: url(moon.png); } </style> </head> <body> <h1>CSS3昼夜背景切换开关特效</h1> <p>点击下面的开关按钮切换背景颜色:</p> <label class="switch"> <input type="checkbox"> <span class="slider"></span> </label> <label class="switch"> <input type="checkbox"> <span class="slider round"></span> </label> <label class="switch"> <input type="checkbox"> <span class="slider round"></span> </label> <label class="switch"> <input type="checkbox"> <span class="slider"></span> </label> <label class="switch"> <input type="checkbox"> <span class="slider round"></span> </label> <label class="switch"> <input type="checkbox"> <span class="slider round"></span> </label> <label class="switch"> <input type="checkbox"> <span class="slider"></span> </label> <label class="switch"> <input type="checkbox"> <span class="slider round"></span> </label> <script type="text/javascript"> var slider = document.getElementsByClassName("slider"); var body = document.getElementsByTagName("body")[0]; for(var i=0; i<slider.length; i++) { slider[i].addEventListener("click", function() { if(body.style.backgroundColor == "#f6f6f6") { body.style.backgroundColor = "#333"; body.style.color = "#fff"; } else { body.style.backgroundColor = "#f6f6f6"; body.style.color = "#333"; } }); } </script> </body> </html> ``` 在上面的代码中,使用了一个`<label>`元素和一个`<input>`元素来创建一个可点击的开关按钮,然后使用CSS3的`::before`伪元素来创建开关按钮的滑块。当点击开关按钮时,使用JavaScript来切换页面的背景颜色和文本颜色。同时,使用CSS3的过渡效果来实现开关按钮的动画效果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值