首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我有一个切换按钮+ collapse...need帮助的代码,将两者结合在一起

我有一个切换按钮+ collapse...need帮助的代码,将两者结合在一起
EN

Stack Overflow用户
提问于 2019-01-11 17:18:25
回答 2查看 37关注 0票数 0

我在这里有一个切换动画:https://codepen.io/7harrypotterrr/pen/OrBwPY,但不知道如何将它实际应用于我的代码,并替换这里的现有切换按钮:https://codepen.io/7harrypotterrr/pen/ebPKjZ

代码语言:javascript
复制
.toggle-box {
  display: none;
}

.toggle-box + label {
  cursor: pointer;
  display: block;
  font-weight: bold;
  line-height: 21px;
  margin-bottom: 5px;
}

.toggle-box + label + div {
  display: none;
  margin-bottom: 10px;
}

.toggle-box:checked + label + div {
  display: block;
}

.toggle-box + label:before {
  background-color: #4F5150;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border-radius: 10px;
  color: #FFFFFF;
  content: "+";
  display: block;
  float: left;
  font-weight: bold;
  height: 20px;
  line-height: 20px;
  margin-right: 5px;
  text-align: center;
  width: 20px;
}

.toggle-box:checked + label:before {
  content: "\2212";
}

.checkbox:hover {
    color: #0da1ec !important;
}

label:hover {
  color: pink;
}
代码语言:javascript
复制
<div id="page">

  <input class="toggle-box" id="identifier-1" type="checkbox">
  <label for="identifier-1">test</label>
  <div>test</div>
  <input class="toggle-box" id="identifier-2" type="checkbox">
  <label for="identifier-2">test</label>
  <div>test</div>
</div>

任何帮助都将不胜感激。谢谢!

EN

回答 2

Stack Overflow用户

发布于 2019-01-11 17:44:39

您可以忽略当前的CSS,并在第一个CodePen中应用CSS,以获得所需的样式。

您还需要删除每个标签后面的测试,并将‘div’替换为<i></i>

代码语言:javascript
复制
label {
  display: block;
  width: 54px;
  height: 32px;
  margin: 0px auto;
  border-radius: 100px;
  transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  background-color: #E6E9EC;
}

input {
  display: none;
}


/* The toggle */

i {
  height: 28px;
  width: 28px;
  background: #ffffff;
  display: inline-block;
  border-radius: 100px;
  margin-top: 2px;
  margin-left: 2px;
  transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  pointer-events: none;
  box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0);
}

label:hover>i {
  box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.20);
  transform: scale(1.01);
}

input:checked+label>i {
  margin-left: 24px;
}

label:active {
  background-color: #A6B9CB;
}

label:active>i {
  width: 34px;
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.20);
}

input:checked+label:active>i {
  margin-left: 18px;
}

input:checked+label {
  background-color: #008FFF;
}
代码语言:javascript
复制
<div id="page">

  <input class="toggle-box" id="identifier-1" type="checkbox">
  <label for="identifier-1"><i></i></label>

  <input class="toggle-box" id="identifier-2" type="checkbox">
  <label for="identifier-2"><i></i></label>

</div>

票数 0
EN

Stack Overflow用户

发布于 2019-01-11 17:45:38

如果您按照代码片段对HTML进行结构化,则下面的css代码应该可以实现您想要的效果。

代码语言:javascript
复制
.toggly + label + div {
  display: none;
  margin-bottom: 10px;
}

.toggly:checked + label + div {
  display: block;
}

代码语言:javascript
复制
label {
  display: block;
  width: 54px;
  height: 32px;
  margin: 0px auto;
  border-radius: 100px;
  transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  background-color: #E6E9EC;
}

input {
  display: none;
}


/* The toggle */

i {
  height: 28px;
  width: 28px;
  background: #ffffff;
  display: inline-block;
  border-radius: 100px;
  margin-top: 2px;
  margin-left: 2px;
  transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  pointer-events: none;
  box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0);
}

label:hover>i {
  box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.20);
  transform: scale(1.01);
}

input:checked+label>i {
  margin-left: 24px;
}

label:active {
  background-color: #A6B9CB;
}

label:active>i {
  width: 34px;
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.20);
}

input:checked+label:active>i {
  margin-left: 18px;
}

input:checked+label {
  background-color: #008FFF;
}



.toggly + label + div {
  display: none;
  margin-bottom: 10px;
}

.toggly:checked + label + div {
  display: block;
}
代码语言:javascript
复制
<input type="checkbox" id="toggly" class="toggly">
  <label for="toggly"><i></i></label>
<div>Test</test>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54143484

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档