上下文:我正在尝试使用收音机 hack来切换在 div 中查看的文本.tabinfo
,但是我的收音机和display
我想要更改其属性的文本位于不同的 div 中。
问题:是否可以使用纯 CSS 选择器#text
通过单击嵌套单选来选择元素?
参考代码:我正在使用引导布局并创建了以下 HTML 代码:
<div class="col-xs-2">
<input id="tab1" type="radio" name="tabs">
<label for="tab1">Foo</label>
</div>
<div class="col-xs-2">
<input id="tab2" type="radio" name="tabs">
<label for="tab2">Bar</label>
</div>
<div class="col-xs-2">
<input id="tab3" type="radio" name="tabs" checked>
<label for="tab3">Foo Bar</label>
</div>
<div class="col-xs-12">
<div class="tabinfo">
<div id="text1">
</div>
<div id="text2">
</div>
<div id="text3">
</div>
</div>
</div>
以及以下 CSS:
label {
border: solid;
border-top-right-radius: 10px;
border-top-left-radius: 10px;
border-bottom: none;
border-color: rgb(211,211,205);
border-width: 2px;
color: rgb(12,174,175);
background-color: rgb(247,247,247);
}
input:checked + label {
background-color: #fff;
color: rgb(94,94,94);
}
label:hover {
cursor: pointer;
}
.tabinfo {
border: solid;
border-color: rgb(211,211,205);
border-width: 2px;
border-top-right-radius: 10px;
}
#tab1:checked ~ .col-xs-12 .tabinfo #text1,
#tab2:checked ~ .col-xs-12 .tabinfo #text2,
#tab3:checked ~ .col-xs-12 .tabinfo #text3 {
display: block!important;
}
正如您可能已经猜到的那样,上述方法不起作用,因为#text
s 和#tab
s 位于不同的 div 中。在不破坏 Bootstrap 布局的情况下,是否有任何解决方法或解决方案?
提前致谢。