【问题标题】:Hidden child div visible on mouseover of parent隐藏的子 div 在父鼠标悬停时可见
【发布时间】:2015-01-06 17:51:24
【问题描述】:

当鼠标悬停在默认隐藏的父 div 上时,如何使子 div visibility:visible

<div class="parent">
    <div class="child1">A</div>
    <div class="child2">B</div>
    <div class="child3" style = "visibility:hidden">C</div>
</div>

从上面的代码中,我希望 child3 在鼠标悬停在 div.parent 上时可见

【问题讨论】:

    标签: css


    【解决方案1】:

    :hover 事件附加到.parent,选择子.child3 并将其visibility 属性更改为visible

    .parent > .child3 {
      visibility: hidden;
    }
    .parent:hover > .child3 {
      visibility: visible;
    }
    <div class="parent">
        <div class="child1">A</div>
        <div class="child2">B</div>
        <div class="child3">C</div>
    </div>

    您也可以使用:last-of-type 选择器来选择最后一个孩子。这样您就不必使用不同的类。

    .parent > .child:last-of-type {
      visibility: hidden;
    }
    .parent:hover > .child:last-of-type {
      visibility: visible;
    }
    <div class="parent">
        <div class="child">A</div>
        <div class="child">B</div>
        <div class="child">C</div>
    </div>

    【讨论】:

    • @ram 您应该将visibility:hidden 移动到您的CSS 文件中,就像chipChocolate 所说的那样,不要在HTML 中内联。如果由于某种原因必须内联,则必须将悬停设置为 visibility: visible !important; 以强制它覆盖内联样式,这不是一个好习惯
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-18
    • 2013-09-30
    • 1970-01-01
    • 1970-01-01
    • 2011-02-12
    相关资源
    最近更新 更多