html - CSS :hover on child selector

标签 html css css-selectors

我有这个 HTML:

<div class="container-s">
    <div class="service">
        <div class="animate-this">

        </div>
    </div>
</div>

animate-this 类可以在整个 html 中出现不同的时间。所以,这就是我想出的

.container-s .service:hover .container-s .animate-this {

}

但这行不通

任何人都可以建议与子选择器一起使用的替代方法吗?

最佳答案

在这种特定情况下,因为两个元素都是同一个容器的一部分,所以您不需要多次指定同一个容器:

.container-s .service:hover .animate-this

这会在悬停时在 .service 中找到 .animate-this,它本身在 .container-s 中。通过在那里添加额外的 .container-s,您是说 .animate-this 出现在某个内部容器中,这是不正确的。不要将这与使用逗号对多个不同 选择器进行分组相混淆,在这种情况下,您需要为每个选择器重复容器部分。在这种情况下,您只需要处理一个选择器。


如果 .animate-this 可以出现在与 .service 不同的容器中,那么这只有在您可以使用选择器实际表达这种关系时才能在 CSS 中实现.不幸的是,CSS 选择器的范围非常有限,尤其是无法从容器中提升以遍历到完全不同的元素。

您的真正目标是在 .service 悬停时为该元素设置动画,无论它出现在 HTML 中的什么位置。这将需要使用 JavaScript 单独查找每个元素,因为 CSS 选择器基于元素之间的具体关系进行操作。

关于html - CSS :hover on child selector,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28392010/

相关文章:

css - 使用 NVD3 库的文本 SVG 样式

html - Div 具有图像的实际宽度而不是计算宽度

用于选择不包含元素的元素的 CSS 规则

html - Facebook 发送按钮对话框 z-index 问题

jquery - 元素在列中向前移动

javascript - 无法访问除第一行之外的其他行的值

CSS:nth-​​child(偶数)但不能被 3 整除

java - 如何让人们可以点击按钮1次?

jquery - 水平显示下拉菜单

html - CSS 技巧 *+html 有什么作用?