【发布时间】:2019-01-25 11:22:46
【问题描述】:
我正在尝试替换一个复选框并将其变成一个按钮。我以前做过,但对于这个网站,我使用的是 Easy Digital Downloads Front End Submissions。我已经搜索和搜索,也浏览了网站上的多个帖子。
我不知道这是如何制作的,但我似乎无法理解它,因为标签似乎出现在课堂上。它有一个我一直试图弄乱的 selectit 类,但无论我做什么我都无法制作按钮。
当我尝试像input[type=checkbox] + label 这样的东西时,它实际上并没有影响任何东西。
其他示例是.selectit input[type=checkbox]:before 这一个有效。
还有.selectit input:checked:after
但同样,我似乎无法使用+ label 添加任何内容。
好吧,我可以制作一个有悬停的,但不能制作一个具有选中状态和颜色变化的例子。
我应该注意我不能更改任何 HTML。复选框的构建方式,我必须坚持,所以我正在尝试制作一个纯 CSS 解决方案。但我可以将 jquery 添加到页面中
这里是复选框的 HTML。我只希望父复选框受到悬停和选中状态的影响。
<ul class="fes-category-checklist">
<li id="download_category-156" data-open="false" style="display: list-item;"><label class="selectit"><input value="156" type="checkbox" name="download_category[]" id="in-download_category-156"> 2D Assets</label>
<ul class="children">
<li id="download_category-183" data-open="false"><label class="selectit"><input value="183" type="checkbox" name="download_category[]" id="in-download_category-183"> Motion Graphics</label></li>
<li id="download_category-163" data-open="false"><label class="selectit"><input value="163" type="checkbox" name="download_category[]" id="in-download_category-163"> HDRI</label></li>
<li id="download_category-162" data-open="false"><label class="selectit"><input value="162" type="checkbox" name="download_category[]" id="in-download_category-162"> Materials</label></li>
<li id="download_category-161" data-open="false"><label class="selectit"><input value="161" type="checkbox" name="download_category[]" id="in-download_category-161"> Textures</label></li>
</ul>
</li>
</ul>
希望有人能解答 谢谢!
编辑
有人建议我更新我的问题,因为我可以将 jquery 插入页面。虽然,这不是我自己有太多经验的事情。
【问题讨论】:
-
您可能有任何图像吗?至少画了什么?
-
我不知道这是否有帮助 第一个复选框被选中,我刚刚为它旁边的标签设置了样式。但由于某种原因无法使用实际的复选框第二个我悬停在上面,第三个是中性的pasteboard.co/HXZJI8C.pngpasteboard.co/HXZJWa5.png
-
input之后的文本没有任何内容。当前的 HTML 有点不可能。要定位复选框,您需要使用:checked伪元素和+兄弟选择器。 -
不幸的是,更改 HTML 是不可能的。但是那仍然可以使用兄弟选择器吗?
-
不能使用兄弟,不。输入是标签的子项。我不认为你可以使用JS吗? :)