当前位置:首页 > CSS

CSS制作checkbox开关

2026-04-02 12:06:39CSS

CSS制作checkbox开关的方法

通过CSS可以自定义checkbox的样式,将其转换为开关效果。以下是几种常见的实现方式:

基础开关样式

使用label和checkbox结合,隐藏原生checkbox,通过label模拟开关:

<label class="switch">
  <input type="checkbox">
  <span class="slider"></span>
</label>
.switch {
  position: relative;
  display: inline-block;
  width: 60px;
  height: 34px;
}

.switch input {
  opacity: 0;
  width: 0;
  height: 0;
}

.slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #ccc;
  transition: .4s;
  border-radius: 34px;
}

.slider:before {
  position: absolute;
  content: "";
  height: 26px;
  width: 26px;
  left: 4px;
  bottom: 4px;
  background-color: white;
  transition: .4s;
  border-radius: 50%;
}

input:checked + .slider {
  background-color: #2196F3;
}

input:checked + .slider:before {
  transform: translateX(26px);
}

圆形开关样式

创建圆形开关按钮效果:

CSS制作checkbox开关

.slider.round {
  border-radius: 34px;
}

.slider.round:before {
  border-radius: 50%;
}

方形开关样式

修改为方形开关:

.slider {
  border-radius: 0;
}

.slider:before {
  border-radius: 0;
}

添加文字提示

在开关上添加ON/OFF文字:

CSS制作checkbox开关

.slider:after {
  content: "OFF";
  color: white;
  display: block;
  position: absolute;
  transform: translate(-50%, -50%);
  top: 50%;
  left: 70%;
  font-size: 10px;
  font-family: Verdana, sans-serif;
}

input:checked + .slider:after {
  content: "ON";
  left: 30%;
}

不同尺寸开关

通过调整尺寸参数创建不同大小的开关:

.small-switch {
  width: 40px;
  height: 20px;
}

.small-switch .slider:before {
  width: 16px;
  height: 16px;
}

.large-switch {
  width: 80px;
  height: 40px;
}

.large-switch .slider:before {
  width: 36px;
  height: 36px;
}

禁用状态样式

为开关添加禁用状态样式:

input:disabled + .slider {
  opacity: 0.5;
  cursor: not-allowed;
}

这些方法提供了灵活的自定义checkbox开关方案,可以根据需求调整颜色、尺寸、形状等参数。通过CSS过渡效果可以实现平滑的开关动画,提升用户体验。

标签: CSScheckbox
分享给朋友:

相关文章

HTML CSS制作

HTML CSS制作

HTML与CSS基础制作指南 HTML结构搭建 使用<!DOCTYPE html>声明文档类型,<html>作为根元素,内部包含<head>(元信息)和<bo…

CSS制作麻将

CSS制作麻将

CSS制作麻将的基本思路 使用CSS制作麻将效果需要结合HTML结构和CSS样式,模拟麻将牌的视觉效果。主要通过边框、阴影、渐变等属性实现立体感,配合伪元素添加细节。 HTML结构设计 麻将牌通常包…

jquery选中checkbox

jquery选中checkbox

选中单个checkbox 通过ID或class选择器选中单个checkbox并设置选中状态: $('#checkboxId').prop('checked', true); $('.checkbox…

jquery获取checkbox

jquery获取checkbox

jQuery获取checkbox的方法 使用jQuery可以方便地获取checkbox的状态或值。以下是几种常见的操作方式: 获取选中的checkbox 使用:checked选择器可以获取所有被选…

jquery判断checkbox是否选中

jquery判断checkbox是否选中

使用 prop() 方法 通过 prop('checked') 获取复选框的选中状态,返回布尔值(true 表示选中,false 表示未选中)。 if ($('#checkboxId')…

jquery获取checkbox选中的值

jquery获取checkbox选中的值

jQuery获取checkbox选中的值 使用jQuery获取被选中的checkbox的值可以通过多种方式实现,以下是几种常见的方法: 方法一:使用:checked选择器和.each()遍历 va…