使用纯 css 单击复选框时关闭 div
close a div when a checkbox clicked with pure css
我试图在使用 css 单击复选框时关闭 div,但不是 JQuery 或 Javascript,但它似乎无法正常工作。我该如何调整它?
div[id^="div-"] {
display: block;
}
div[id^="div-"]:target {
display: none;
}
<a href="#div-1"><input type="checkbox" checked></a>
<div id="div-1">
Here is the content.
</div>
如何 link <a>
单击和复选框?
#text{
width:100px;
height:100px;
background:black;
}
input[type=checkbox]:checked ~ #text{
display:none;
}
<input type="checkbox" name="check" value="checked">Click here<br>
<div id="text"></div>
只使用 CSS 你可以做这样的事情。
+ 是相邻的兄弟选择器,更多信息在 https://developer.mozilla.org/en/docs/Web/CSS/Adjacent_sibling_selectors
#close + #div-1 {
display: none;
}
#close:checked + #div-1 {
display: initial;
}
<input id="close" type="checkbox" checked />
<div id="div-1">Here is the content.</div>
我认为使用纯 css 执行此操作的唯一方法是将复选框作为 div:
的直接同级
#div-1 {display:none}
#checkbox:checked + #div-1 {display:block;}
<input id="checkbox" type="checkbox" checked>
<div id="div-1">
Here is the content.
</div>
首先,您应该删除锚点并只让输入元素,因为我展示的这个技巧需要同一级别的元素,或者第二个元素位于 html 结构的较低级别。
<input type="checkbox" checked>
<div id="div-1">
Here is the content.
</div
css
div[id^="div-"] {
display: block;
}
input:checked ~ div[id^="div-"] {
display: none;
}
我试图在使用 css 单击复选框时关闭 div,但不是 JQuery 或 Javascript,但它似乎无法正常工作。我该如何调整它?
div[id^="div-"] {
display: block;
}
div[id^="div-"]:target {
display: none;
}
<a href="#div-1"><input type="checkbox" checked></a>
<div id="div-1">
Here is the content.
</div>
如何 link <a>
单击和复选框?
#text{
width:100px;
height:100px;
background:black;
}
input[type=checkbox]:checked ~ #text{
display:none;
}
<input type="checkbox" name="check" value="checked">Click here<br>
<div id="text"></div>
只使用 CSS 你可以做这样的事情。
+ 是相邻的兄弟选择器,更多信息在 https://developer.mozilla.org/en/docs/Web/CSS/Adjacent_sibling_selectors
#close + #div-1 {
display: none;
}
#close:checked + #div-1 {
display: initial;
}
<input id="close" type="checkbox" checked />
<div id="div-1">Here is the content.</div>
我认为使用纯 css 执行此操作的唯一方法是将复选框作为 div:
的直接同级#div-1 {display:none}
#checkbox:checked + #div-1 {display:block;}
<input id="checkbox" type="checkbox" checked>
<div id="div-1">
Here is the content.
</div>
首先,您应该删除锚点并只让输入元素,因为我展示的这个技巧需要同一级别的元素,或者第二个元素位于 html 结构的较低级别。
<input type="checkbox" checked>
<div id="div-1">
Here is the content.
</div
css
div[id^="div-"] {
display: block;
}
input:checked ~ div[id^="div-"] {
display: none;
}