微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

CSS 悬停一个 div,更改 2 个特定的嵌套 div

如何解决CSS 悬停一个 div,更改 2 个特定的嵌套 div

以下不起作用。

仅应用最后一条悬停规则。为什么?

#projects-images-section {
    display: grid;
    grid-template-columns: repeat(5,1fr);
    width: 100%;
}

#projects-images-section .Box {
    cursor: pointer;
    overflow: hidden;
    position: relative;
}

#projects-images-section .Box:hover .overlay {
    opacity: 1;
}

#projects-images-section .Box:hover .image {
    transform: scale(1.2);
}

#projects-images-section .Box .overlay {
    align-items: center;
    background-color: rgba(0,0.8);
    color: #FFF;
    display: flex;
    height: 100%;
    justify-content: center;
    opacity: 0;
    position: absolute;
    transition: opacity 0.3s;
    width: 100%;
}

#projects-images-section .Box .image {
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s;
    width: 100%;
}
<div id="projects-images-section">
    <div class="Box">
        <div class="overlay">
            <i class="fas fa-search icon"></i>
        </div>
        <img class="image" src="img/1.jpg" />
    </div>
</div>

如何在 CSS 中悬停一个 div 并更改两个特定的嵌套 div?

我可以只使用 CSS 还是必须使用 Javascript?

解决方法

我已经知道问题出在哪里了!

具有 overlay 类的 div 必须位于具有类 box 的 div 中。

它还缺少 top: 0 类中的 overlay

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。