84669 人学习
152542 人学习
20005 人学习
5487 人学习
7821 人学习
359900 人学习
3350 人学习
180660 人学习
48569 人学习
18603 人学习
40936 人学习
1549 人学习
1183 人学习
32909 人学习
这取决于你对“next to it”是什么意思。 你可以使用属性选择器通过可见性选择元素。或者从这里选择:
要通过可见性访问一个元素,你可以使用例如子字符串匹配属性选择器星号[att*=val]。假设div的样式是使用visibility: hidden;隐藏的:
[att*=val]
visibility: hidden;
div[style*="hidden"] { }
现在的问题是如何访问“next to it”的元素。 如果你尝试定位的元素直接在隐藏元素之后(在同一父级内),使用+选择器:
div[style*="hidden"] + span { }
如果它在之前,你就没有办法了,但可以在这个问题的答案中寻找一些解决方法:是否有“previous sibling” CSS选择器?
不,这是不可能的,也不可能,至少在样式表中是不可能的。
否则,你会创建一个无限循环:
element:visible { display: none; }
元素一开始是可见的,然后选择器会选择它并隐藏它,然后选择器不适用,它又变得可见,依此类推。
在JS API中,允许使用伪类选择器,比如querySelector。但据我所知,目前还没有这样的东西,而且它不可能只使用CSS实现。
querySelector
这取决于你对“next to it”是什么意思。 你可以使用属性选择器通过可见性选择元素。或者从这里选择:
要通过可见性访问一个元素,你可以使用例如子字符串匹配属性选择器星号
[att*=val]
。假设div的样式是使用visibility: hidden;
隐藏的:现在的问题是如何访问“next to it”的元素。 如果你尝试定位的元素直接在隐藏元素之后(在同一父级内),使用+选择器:
如果它在之前,你就没有办法了,但可以在这个问题的答案中寻找一些解决方法:是否有“previous sibling” CSS选择器?
不,这是不可能的,也不可能,至少在样式表中是不可能的。
否则,你会创建一个无限循环:
元素一开始是可见的,然后选择器会选择它并隐藏它,然后选择器不适用,它又变得可见,依此类推。
在JS API中,允许使用伪类选择器,比如
querySelector
。但据我所知,目前还没有这样的东西,而且它不可能只使用CSS实现。