Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
有没有可能让css选择器在没有javascript的情况下影响页面中的其他元素?_Css_Focus_Css Selectors - Fatal编程技术网

有没有可能让css选择器在没有javascript的情况下影响页面中的其他元素?

有没有可能让css选择器在没有javascript的情况下影响页面中的其他元素?,css,focus,css-selectors,Css,Focus,Css Selectors,例如,我想使两个文本框在其中一个被聚焦时具有相同的样式: <div class="divTxt"> <input type="text" id="a" class="a" /> <input type="text" id="b" class="b" /> </div> 我需要的是使a的背景色:当b聚焦时为黄色,反之亦然。 有没有可能?非常感谢。如果输入框相邻,您可以尝试 比如: .a:focus { background-c

例如,我想使两个文本框在其中一个被聚焦时具有相同的样式:

<div class="divTxt">
    <input type="text" id="a" class="a" />
    <input type="text" id="b" class="b" />
</div>
我需要的是使a的背景色:当b聚焦时为黄色,反之亦然。 有没有可能?非常感谢。

如果输入框相邻,您可以尝试

比如:

.a:focus {    background-color:Blue;}
.a:focus~.b {    background-color:Blue;}
.b:focus {    background-color:Yellow;}
.b:focus~.a {    background-color:Yellow;}

注意:完全未经测试,充其量只是暗中捅一刀

如果禁用了javascript,他们可能不会注意到文本框样式

.chk1:focus{
   background-color:Blue;
}
.chk2:focus{
   background-color:Yellow;
}
文本场

<input class=chk1 type=text id="a">
<input class=chk2 type=text id="b">

这一个在FireFox上可以正常工作,但在IE6上可能会有问题 看

如果你想让它与IE一起工作,你可能想使用javascript

希望这有帮助


RDJ

我认为不使用Javascript是行不通的——不管怎样,使用Javascript做这件事有什么错呢?它适用于禁用Javascript的浏览器。:)好的观点+1。遗憾的是,这在旧浏览器中没有得到很好的实现。更不用说IE7中的错误了,链接文章提到了它的兼容性问题。谢谢,但旧浏览器没有使用这一功能。。。现在仍然有很多人使用旧的。改变。a:focus~b to。a:focus~b。。。当b聚焦时,这不起作用。无论如何,非常感谢@Jronny,有了这些限制,我想你可能会被卡住。如果能找到解决办法,他们一定会得到我的选票!不管怎样,他们禁用了javascript都是他们的错。他们不会注意到我创造的美。恶笑
<input class=chk1 type=text id="a">
<input class=chk2 type=text id="b">