【问题标题】:Css Hover and space between element [duplicate]Css悬停和元素之间的空间[重复]
【发布时间】:2021-06-03 18:20:27
【问题描述】:

我尝试让一个 div 出现在悬停时,但是当在悬停的线和显示的元素之间放置一个空格(边距)当我的指针位于两个 div 之间时,我的悬停状态消失。强>

#dropdown {
    text-align: center;
}  

#dropdown .sub-menu{
    visibility: hidden;
    position: absolute;
    background-color: black;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
    width: 250px;
    margin-top: 30px;
}

#dropdown:hover .sub-menu{
    visibility: visible;
}



#dropdown .sub-menu ul{
    display: flex;
    flex-direction: column; 
}
<div id="dropdown">
  <div id="menu-user-titre"> 
    <span>Hover me</span>
  </div>
  <div class="sub-menu">
    <ul>
      <li><a href="">hello</a></li>
    </ul>
  </div>
</div>

我怎样才能保持空间和悬停?

谢谢!

【问题讨论】:

    标签: html css hover


    【解决方案1】:

    你应该删除这行#dropdown .sub-menu

    margin-top: 30px;
    

    添加这个:

    #menu-title{
      padding-bottom:30px;
    }
    

    填充是#mwnu-title 元素的子集。

    HTML:

        <div id="dropdown">
            <div id="menu-title"> 
                <span>Hover me</span>
            </div>
            <div class="sub-menu">
                <ul>
                    <li><a href="">hello</a></li>
                </ul>
            </div>
      </div>
    

    风格:

    #dropdown {
        text-align: center;
    }
    
    
    #dropdown .sub-menu{
        visibility: hidden;
        position: absolute;
        background-color: black;
        left: 50%;
        transform: translateX(-50%);
        z-index: 1;
        width: 250px;
        
    }
    
    #dropdown:hover .sub-menu{
        visibility: visible;
    }
    
    
    
    
    
    /* OTHER */
    
    #dropdown .sub-menu ul{
        display: flex;
        flex-direction: column; 
    }
    
    #menu-title{
      padding-bottom:30px;
    }
    

    【讨论】: