相思资源网 Design By www.200059.com
前言
H5站点需要IOS滑动按钮的效果,想了想似乎CSS3能搞起,就折腾出来了...挺简单的..请看注释
效果
代码
XML/HTML Code复制内容到剪贴板- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <title>CSS3模拟IOS开关</title>
- <style type="text/css" media="screen">
- /* ==========================================================================
- 设置根元素字体大小
- ========================================================================== */
- html {
- font-size: 100px;
- }
- /* ==========================================================================
- 设置模拟元素的包裹层,装饰...毫无卵用
- ========================================================================== */
- .ios-checkbox{
- height:4rem;
- width:4rem;
- position:absolute;
- left:50%;
- top:50%;
- -webkit-transform:translate(-50%, -50%);
- transform:translate(-50%, -50%);
- border:.05rem dashed #3DB7A9;
- display:-webkit-box;
- display:-webkit-flex;
- display:-ms-flexbox;
- display:flex;
- -webkit-box-orient:horizontal;
- -webkit-box-direction:normal;
- -webkit-flex-direction:column;
- -ms-flex-direction:column;
- flex-direction:column;
- -webkit-flex-wrap:nowrap;
- -ms-flex-wrap:nowrap;
- flex-wrap:nowrap;
- -webkit-justify-content:space-around;
- -ms-flex-pack:distribute;
- justify-content:space-around;
- -webkit-box-align:center;
- -webkit-align-items:center;
- -ms-flex-align:center;
- align-items:center;
- }
- /* ==========================================================================
- label标签模拟按钮
- ========================================================================== */
- .emulate-ios-button {
- display: block;
- width: 2rem;
- height: 1rem;
- background: #ccc;
- border-radius: 5rem;
- cursor: pointer;
- position: relative;
- -webkit-transition: all .3s ease;
- transition: all .3s ease;
- }
- /* ==========================================================================
- 设置伪类,来实现模拟滑块滑动,过渡用了transition来实现 ,
- translateZ来强制启用硬件渲染
- ========================================================================== */
- .emulate-ios-button:after {
- content: '';
- display: block;
- width: .9rem;
- height: .9rem;
- border-radius: 100%;
- background: #fff;
- box-shadow: 0 1px 1px rgba(0, 0, 0, .1);
- position: absolute;
- left: .05rem;
- top: .05rem;
- -webkit-transform:translateZ(0);
- transform:translateZ(0);
- -webkit-transition: all .3s ease;
- transition: all .3s ease;
- }
- .emulate-ios-button:active:after {
- width: 1.1rem;
- }
- /* ==========================================================================
- 设置raw-checkbox,视觉直观比较
- ========================================================================== */
- .raw-checkbox{
- height:2rem;
- width:2rem;
- }
- .raw-checkbox:checked+label {
- background: #34bf49;
- }
- /* 这里是伪元素偏移,初始是0.9+0.05 ,所以这里1.05rem */
- .raw-checkbox:checked+label:after {
- left: 1.05rem;
- }
- .raw-checkbox:checked+label:active:after {
- left: .5rem;
- }
- .raw-checkbox:disabled+label {
- background: #d5d5d5;
- pointer-events: none;
- }
- .raw-checkbox:disabled+label:after {
- background: #bcbdbc;
- }
- </style>
- </head>
- <body>
- <div class="ios-checkbox">
- <input type="checkbox" id="ios-checkbox" name="emulate-ios-button" class="raw-checkbox">
- <label for="ios-checkbox" class="emulate-ios-button"></label>
- </div>
- </body>
- </html>
总结
为了更直观的比较,raw checkbox我就没有隐藏了。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
标签:
CSS3,IOS,滑动开关
相思资源网 Design By www.200059.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
相思资源网 Design By www.200059.com
暂无CSS3模拟IOS滑动开关效果的评论...
P70系列延期,华为新旗舰将在下月发布
3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。
而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?
根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。