心脏心脏 2021-09-13 12:51 采纳率: 66.7%
浏览 53
已结题

我想做一个鼠标进过下拉菜单,结果经过时出现了不可描述的问题如图。


<!DOCTYPE html>
<html lang="zh">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <meta http-equiv="X-UA-Compatible" content="ie=edge">
        <title>测试</title>
    
        <style type="text/css">
*{
    list-style-type: none;
    margin: 0;
    padding: 0;
    transition: all .5s;
}
li{
    height: 42px;
    width: 150px;
}
a{
    display:block;
    width: 150px;
    height: 42px;
    color:#881715 ;
    text-decoration: none;
}
.nav{
    margin: 100px auto;
    text-align: center;
    line-height: 42px;
}
.mainli{
    width: 150px;
    display: inline-block;
}
.mainli ul {
    display: none;
}
.mainli ul li:hover {
    background-color: #9f9093;
    color: white;
}
.mainli a:hover{
    color: white;
    background-color: #9f9093;
}
        </style>
    </head>
    <body>
    <ul class="nav">
        <li class="mainli">
            <a href="">你好呀!!</a>
            <ul>
                <li>小震</li>
                <li>你好</li>
                <li>想吧</li>
            </ul>
        </li>
        <li class="mainli">
            <a href="">你好呀!!</a>
            <ul>
                <li>小震</li>
                <li>你好</li>
                <li>想吧</li>
            </ul>
        </li>
        <li class="mainli">
            <a href="">你好呀!!</a>
            <ul>
                <li>小震</li>
                <li>你好</li>
                <li>想吧</li>
            </ul>
        </li>
        <li class="mainli">
            <a href="">你好呀!!</a>
            <ul>
                <li>小震</li>
                <li>你好</li>
                <li>想吧</li>
            </ul>
        </li>
    </ul>
    <script>
        var nav =document.querySelector('.nav');
        var  lis=nav.children;
        console.log(lis);
        //设置鼠标经过事件
        for(var i=0;i<lis.length;i++){
            lis[i].onmouseover=function (){
                    this.children[1].style.display='inline-block';
            }
            lis[i].onmouseout=function (){
                 this.children[1].style.display='none';
             }

        }

    </script>
    </body>
</html>

img

  • 写回答

3条回答 默认 最新

  • 前端不释卷leo 前端领域新星创作者 2021-09-13 13:40
    关注

    首先,你所指的不可描述的问题是布局改变了吗?
    如果是,你可以将下拉菜单变成绝对定位,脱离文档流,不影响页面布局
    .mainli{
    width: 150px;
    display: inline-block;
    position:relative;
    }
    .mainli ul {
    display: none;
    position:absolute;
    }

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 9月21日
  • 已采纳回答 9月13日
  • 创建了问题 9月13日

悬赏问题

  • ¥15 ansys fluent计算闪退
  • ¥15 有关wireshark抓包的问题
  • ¥15 需要写计算过程,不要写代码,求解答,数据都在图上
  • ¥15 向数据表用newid方式插入GUID问题
  • ¥15 multisim电路设计
  • ¥20 用keil,写代码解决两个问题,用库函数
  • ¥50 ID中开关量采样信号通道、以及程序流程的设计
  • ¥15 U-Mamba/nnunetv2固定随机数种子
  • ¥15 vba使用jmail发送邮件正文里面怎么加图片
  • ¥15 vb6.0如何向数据库中添加自动生成的字段数据。