admin 管理员组

文章数量: 887017

CSS实现开关按钮样式

样式一:

 


<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>开关按钮</title>
</head>
<style>
/* 开关按钮开始样式!!!!!! */
.cmn-toggle {position: absolute;margin-left: -9999px;visibility: hidden;
}
.cmn-toggle + label {display: block;position: relative;cursor: pointer;outline: none;user-select: none;
}
input.cmn-toggle-round + label {padding: 2px;width: 60px; /*开关按钮的宽度*/height: 30px; /*开关按钮的高度*/background-color: #dddddd;border-radius: 60px;
}
input.cmn-toggle-round + label:before,
input.cmn-toggle-round + label:after {display: block;position: absolute;top: 1px;left: 1px;bottom: 1px;content: "";
}
input.cmn-toggle-round + label:before {right: 1px;background-color: #f1f1f1;border-radius: 60px;transition: background 0.4s;
}
input.cmn-toggle-round + label:after {width: 30px; /*开关按钮小圆球的宽度*/background-color: #fff;border-radius: 100%;box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);transition: margin 0.4s;
}
input.cmn-toggle-round:checked + label:before {background-color: #8ce196;
}
input.cmn-toggle-round:checked + label:after {margin-left: 30px;/*开关滑开后小球距离左侧的距离*/
}
/* 开关按钮结束样式!!!!!!! */</style>
<body><div class="switch"><input id="cmn-toggle-1" class="cmn-toggle cmn-toggle-round" type="checkbox"><label for="cmn-toggle-1"></label></div></body>
</html>

 样式二:


<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>开关按钮</title>
</head>
<style>
/* 开关按钮开始样式!!!!!! */
.cmn-toggle {position: absolute;margin-left: -9999px;visibility: hidden;
}
.cmn-toggle + label {display: block;position: relative;cursor: pointer;outline: none;user-select: none;
}
input.cmn-toggle-round-flat + label {padding: 2px;width: 120px;height: 60px;background-color: #dddddd;border-radius: 60px;transition: background 0.4s;
}
input.cmn-toggle-round-flat + label:before,
input.cmn-toggle-round-flat + label:after {display: block;position: absolute;content: "";
}
input.cmn-toggle-round-flat + label:before {top: 2px;left: 2px;bottom: 2px;right: 2px;background-color: #fff;border-radius: 60px;transition: background 0.4s;
}
input.cmn-toggle-round-flat + label:after {top: 4px;left: 4px;bottom: 4px;width: 52px;background-color: #dddddd;border-radius: 52px;transition: margin 0.4s, background 0.4s;
}
input.cmn-toggle-round-flat:checked + label {background-color: #8ce196;
}
input.cmn-toggle-round-flat:checked + label:after {margin-left: 60px;background-color: #8ce196;
}
/* 开关按钮结束样式!!!!!!! */</style>
<body><div class="switch"><input id="cmn-toggle-4" class="cmn-toggle cmn-toggle-round-flat" type="checkbox"><label for="cmn-toggle-4"></label></div></body>
</html>

 样式三:


<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>开关按钮</title>
</head>
<style>
/* 开关按钮开始样式!!!!!! */
.cmn-toggle {position: absolute;margin-left: -9999px;visibility: hidden;
}
.cmn-toggle + label {display: block;position: relative;cursor: pointer;outline: none;user-select: none;
}
input.cmn-toggle-yes-no + label {padding: 2px;width: 120px;height: 60px;
}
input.cmn-toggle-yes-no + label:before,
input.cmn-toggle-yes-no + label:after {display: block;position: absolute;top: 0;left: 0;bottom: 0;right: 0;color: #fff;font-family: "Roboto Slab", serif;font-size: 20px;text-align: center;line-height: 60px;
}
input.cmn-toggle-yes-no + label:before {background-color: #dddddd;content: attr(data-off);transition: transform 0.5s;backface-visibility: hidden;
}
input.cmn-toggle-yes-no + label:after {background-color: #8ce196;content: attr(data-on);transition: transform 0.5s;transform: rotateY(180deg);backface-visibility: hidden;
}
input.cmn-toggle-yes-no:checked + label:before {transform: rotateY(180deg);
}
input.cmn-toggle-yes-no:checked + label:after {transform: rotateY(0);
}/* 开关按钮结束样式!!!!!!! */</style>
<body><div class="switch"><input id="cmn-toggle-7" class="cmn-toggle cmn-toggle-yes-no" type="checkbox"><label for="cmn-toggle-7" data-on="Yes" data-off="No"></label></div></body>
</html>

本文标签: CSS实现开关按钮样式