根据祖先元素的CSS属性值选择元素是否可能?假设我有以下HTML文本:
<div><!-- ancestor -->
<!-- I may have N level descendants which are as well ancestors for the upcoming div -->
<div class="myTarget">
The div I want to target
</div>
</div>
除了祖先元素中有一个CSS属性 display: table-cell
,否则应该使用position: relative
,否则就应该使用position: absolute
,至于祖先元素的信息,我并不知道。
.myTarget {
position: relative;
}
/*************************************************************************************************
* This is actually the question, how to target .myTarget when some ancestor div contains a given
* cssProperty. Code below is just pseudo-code not actual CSS.
*************************************************************************************************/
div[cssProperty=desiredValue] .myTarget {
position: absolute;
}
我猜想可能无法实现,但是由于可以根据元素的属性选择元素,所以我认为或许可以根据其CSS属性进行选择。
div[style="display: table-cell"]
可能是可行的。或者使用JS来检查父级属性。 - JustinasmyTarget
的规则来对其进行操作。说实话,我认为我们正在处理一个XY问题的情况。 - Armen Michaeli[style~="display: ..."]
选择器实现,但在不了解您的问题更多信息的情况下,我不会这样做。长篇回答:您是否阅读了关于XY问题的链接文章,并且是否愿意编辑您的答案以详细说明您正在开发什么类型的组件,以及为什么它能够基于是否是表格单元格元素的一部分而切换其定位策略如此至关重要? - Armen Michaeli