属性父选择器的CSS

标签 css

我想隐藏父元素<li>根据其子属性:

这个问题没有解决我的问题:Is there a CSS parent selector?

我的 HTML:

<li class="tools-item"></li>
<li class="tools-item"></li>
<li class="tools-item">
    <a href="/modules/chk/" data-identity="extensionButton_9_2" class="tool-block">
        <span class="tool-icon">
            <img src="/modules/chk/images/button.png" alt=""></span>
        <span class="tool-name">Modules name</span>
    </a>
    <span class="tooltipData">Modules details</span>
</li>
<li class="tools-item"></li>
<li class="tools-item"></li>

想要根据以下条件隐藏父项:data-identity="extensionButton_9_2"

我的 CSS:

为属性工作:

[data-identity="extensionButton_9_2"]{
    display: none !important;
} 

不为 parent 工作的CSS:

[data-identity="extensionButton_9_2"]:parent {
    display: none !important;
}

li:has(> [data-identity="extensionButton_9_2"]) {
display: none !important;    
}

请帮忙。 谢谢

最佳答案

虽然浏览器支持 limited,但您可以使用 :has() 伪选择器.在解决此问题之前,您可以使用 polyfill .

li:has(a[data-identity="extensionButton_9_2"]) {
  display: none;
}
<li class="tools-item"></li>
<li class="tools-item"></li>
<li class="tools-item">
  <a href="/modules/chk/" data-identity="extensionButton_9_2" class="tool-block">
    <span class="tool-icon">
            <img src="/modules/chk/images/button.png" alt=""></span>
    <span class="tool-name">Modules name</span>
  </a>
  <span class="tooltipData">Modules details</span>
</li>
<li class="tools-item"></li>
<li class="tools-item"></li>

关于属性父选择器的CSS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58093014/

相关文章:

javascript - 在 Angular 中添加 CSS 类

html - 如何使用CSS为输入边框底部着色

jQuery:颜色更改不适用于 Chrome 和 Safari

javascript - 当我移动图像然后应用旋转变换时,它 "teleports"返回到其原始位置

javascript - 设置背景颜色时,HTML 选择框在 Android 4.0 版上不显示下拉箭头

CSS3 transform 让元素移动无限制

jquery - 如何分离每个元素的操作

javascript - 汉堡菜单点击动画问题

css - 如何让子图像大于父 div 并放置在任何位置

html - 一起使用 "transform"和 "table"