…">
当前位置:首页 > CSS

css制作开关按钮

2026-03-11 21:29:39CSS

使用纯CSS制作开关按钮

通过CSS的伪元素和input[type="checkbox"]结合实现开关按钮效果,无需JavaScript。

<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);
}

添加动画效果的开关按钮

通过调整过渡时间和阴影效果增强视觉反馈。

.slider {
  box-shadow: 0 2px 5px rgba(0,0,0,0.2);
  transition: all 0.3s ease-in-out;
}

input:checked + .slider {
  box-shadow: 0 0 10px rgba(33,150,243,0.5);
}

不同风格的开关按钮

方形开关按钮
修改border-radius值为更小的数值或0:

.slider {
  border-radius: 4px;
}
.slider:before {
  border-radius: 2px;
}

迷你尺寸开关
调整整体尺寸比例:

.switch {
  width: 40px;
  height: 20px;
}
.slider:before {
  height: 16px;
  width: 16px;
}
input:checked + .slider:before {
  transform: translateX(20px);
}

禁用状态样式

为禁用状态添加特殊样式:

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

暗色模式适配

通过CSS变量实现主题切换:

css制作开关按钮

:root {
  --switch-bg: #ccc;
  --switch-active: #2196F3;
  --thumb-color: white;
}

[data-theme="dark"] {
  --switch-bg: #555;
  --switch-active: #0d8bf2;
  --thumb-color: #ddd;
}

.slider {
  background-color: var(--switch-bg);
}
input:checked + .slider {
  background-color: var(--switch-active);
}
.slider:before {
  background-color: var(--thumb-color);
}

标签: 按钮css
分享给朋友:

相关文章

网页制作css

网页制作css

CSS 基础语法 CSS(层叠样式表)用于控制网页的样式和布局。基本语法由选择器和声明块组成: 选择器 { 属性: 值; 属性: 值; } 例如: p { color: blu…

css制作菜单

css制作菜单

水平菜单制作 使用display: inline-block或flexbox布局创建水平菜单。设置list-style: none移除默认列表样式,添加padding和margin调整间距。 <…

css制作导航栏

css制作导航栏

水平导航栏 使用 display: inline-block 或 flexbox 创建水平导航栏。设置背景色、内边距和悬停效果增强交互性。 <nav class="horizontal-nav…

咖啡店css制作

咖啡店css制作

咖啡店网页CSS设计要点 布局与配色 咖啡店网页通常采用温暖自然的配色方案,如棕色、米色、浅绿色等大地色系。主色调可选择咖啡色(#6F4E37)作为品牌色,搭配奶油色(#FFF8E8)作为背景。使用C…

怎么制作风水罗盘css

怎么制作风水罗盘css

制作风水罗盘CSS 使用CSS创建一个风水罗盘(八卦罗盘)需要结合HTML和CSS技术,通过层叠样式表绘制罗盘的各个部分。以下是实现方法: 基本结构 创建HTML结构,包含罗盘的外圆、内圆、八卦符号…

css日历制作

css日历制作

基础日历结构 使用HTML创建日历的基本框架,通常包含表格元素。月份、星期几和日期通过<table>标签组织,表头显示星期几,表格主体填充日期数字。 <div class="cal…