【问题标题】:how to use a checkmark as a checkbox in css [closed]如何在css中使用复选标记作为复选框[关闭]
【发布时间】:2018-01-17 11:48:57
【问题描述】:

我有一个如下所示的复选标记,我想使用复选标记作为复选框,我不希望勾选出现在复选框内。我希望能够单击勾号以便将其选中。它应该像一个复选框,但没有盒子,如果可以在 css 中完成,有什么建议吗?

.checkmark {
    display:inline-block;
    width: 22px;
    height:22px;
    -ms-transform: rotate(45deg); /* IE 9 */
    -webkit-transform: rotate(45deg); /* Chrome, Safari, Opera */
    transform: rotate(45deg);
}

.checkmark_stem {
    position: absolute;
    width:3px;
    height:9px;
    background-color:#ccc;
    left:11px;
    top:6px;
}

.checkmark_kick {
    position: absolute;
    width:3px;
    height:3px;
    background-color:#ccc;
    left:8px;
    top:12px;
}
<span class="checkmark">
    <div class="checkmark_stem"></div>
    <div class="checkmark_kick"></div>
</span>

【问题讨论】:

  • 请做一些基础研究...google.com/search?q=css+custom+checkbox
  • 不太确定你在问什么。您希望它在点击时看起来不同,还是什么?
  • 我希望它充当复选框
  • 如果您想尝试使用 javascript,也可以这样做jsfiddle

标签: html css


【解决方案1】:

自定义复选框很难,首先需要一个复选框。

您需要一个复选框来保存支票的价值。您需要设置标签样式,并隐藏复选框,这样您就只能看到标签,并且该标签将能够与复选框进行交互。

试试这个:

.checkmark {
    display:inline-block;
    width: 22px;
    height:22px;
    -ms-transform: rotate(45deg); /* IE 9 */
    -webkit-transform: rotate(45deg); /* Chrome, Safari, Opera */
    transform: rotate(45deg);
}

input[type="checkbox"] { display: none; }

.checkmark:before {
    content: '';
    position: absolute;
    width:3px;
    height:9px;
    background-color:#ccc;
    left:11px;
    top:6px;
}

.checkmark {
  cursor: pointer;
}

.checkmark:after {
    content: '';
    position: absolute;
    width:3px;
    height:3px;
    background-color:#ccc;
    left:8px;
    top:12px;
}

input[type="checkbox"]:checked + .checkmark:before,
input[type="checkbox"]:checked + .checkmark:after {
  background-color: green;
}
<input type="checkbox" id="cb">
<label for="cb" class="checkmark"></label>

【讨论】:

  • 没问题!您还可以在网上找到大量此类问题的教程。我建议你检查 CSS 技巧,他们发表了非常好的文章!
  • 谢谢你,会检查的。
【解决方案2】:

你是认真的吗?

.checkmark {
    display:inline-block;
    width: 22px;
    height:22px;
    -ms-transform: rotate(45deg); /* IE 9 */
    -webkit-transform: rotate(45deg); /* Chrome, Safari, Opera */
    transform: rotate(45deg);
}

.checkmark_stem {
    position: absolute;
    width:3px;
    height:9px;
    background-color:#ccc;
    left:11px;
    top:6px;
}

.checkmark_kick {
    position: absolute;
    width:3px;
    height:3px;
    background-color:#ccc;
    left:8px;
    top:12px;
}

.checkbox-hidden {
	display: none;
}
.checkbox-hidden:checked + label .checkmark_stem, .checkbox-hidden:checked + label .checkmark_kick {
	background-color: #4caf50;
}
<input type="checkbox" class="checkbox-hidden" id="checkbox"> 
	<label class="checkmark" for="checkbox">
	    <div class="checkmark_stem"></div>
	    <div class="checkmark_kick"></div>
	</label>

【讨论】:

  • 你应该为初学者提供一个关于你的 sn-p 的快速解释。
猜你喜欢
  • 1970-01-01
  • 2018-07-20
  • 2011-04-14
  • 2011-02-08
  • 1970-01-01
  • 1970-01-01
  • 2020-01-09
  • 1970-01-01
  • 2020-06-28
相关资源
最近更新 更多