【问题标题】:Affecting navbar when hovering on dropdown content悬停在下拉内容上时影响导航栏
【发布时间】:2022-01-04 14:49:49
【问题描述】:

我有一个导航栏,其中包含家庭、联系人、将军等典型内容。“将军”的颜色为白色,背景色透明。当我将鼠标悬停在它上面时,它是 #333 并且背景颜色变为白色。 “常规”有一个下拉菜单。当我将鼠标悬停在下拉内容上时,“常规”将变回白色,但我希望当我将鼠标悬停在下拉内容上时它仍然是颜色 #333。我试图把它放在一个 div 和其他东西中,但我没有工作。我必须对我的代码进行哪些更改?

这是我的代码:

<ul class="top-level-menu">
        <li><a href="index1.html">Contact</a></li>
        <li><a href="#">Gallery</a></li>
        <li><a href="#">Travel</a></li>
        <li>
            <a href="#">General</a>
            <ul class="second-level-menu">
                <li><a href="#">People</a></li>
                <li><a href="#">Defense</a></li>
                <li>
                    <a href="#">Cities</a>
                    <ul class="third-level-menu">
                        <li><a href="#">Moscow</a></li>
                        <li><a href="#">Vladivostok</a></li>
                        <li><a href="#">Kazan</a></li>
                        <li><a href="#">Sochi</a></li>
                    </ul>
                </li>
                <li><a href="#">History</a></li>
                <li><a href="#">Demographics</a></li>
                <li><a href="#">Geographics</a></li>
                <li><a href="#">Culture</a></li>
            </ul>
        </li>
        <li><a href="#">Home</a></li>
    </ul>
And css:
.third-level-menu {
    position: absolute;
    top: 0;
    right: -150px;
    width: 150px;
    list-style: none;
    padding: 0;
    margin: 0;
    display: none;
}

.third-level-menu>li {
    height: 30px;
    background: #fff;
}

.third-level-menu>li:hover {
    background: #f1f1f1;
}

.second-level-menu {
    position: absolute;
    top: 30px;
    left: 0;
    width: 150px;
    list-style: none;
    padding: 0;
    margin: 0;
    display: none;
}

.second-level-menu>li {
    position: relative;
    height: 30px;
    background: #fff;
}

.second-level-menu>li a {
    color: #333;
    float: left;
    padding-left: 23px;
}

.second-level-menu>li:hover {
    background: #f1f1f1;
}

.top-level-menu {
    list-style: none;
    padding: 0;
    margin: 0;
}

.top-level-menu>li {
    position: relative;
    float: right;
    height: 30px;
    width: 100px;
    background: transparent;
    margin-top: 20px;
    text-align: center;
    font-size: 14px;
}

.top-level-menu>li:hover {
    background: #fff;
}

.top-level-menu li:hover>ul {
    display: inline;
}

.top-level-menu a
{
    color: #fff;
    text-decoration: none;
    display: block;
    line-height: 30px;
}

.top-level-menu a:hover {
    color: #333;
}

【问题讨论】:

    标签: html css


    【解决方案1】:

          body {
            background: rgb(15, 14, 14);
          }
          .third-level-menu {
            position: absolute;
            top: 0;
            right: -150px;
            width: 150px;
            list-style: none;
            padding: 0;
            margin: 0;
            display: none;
          }
    
          .third-level-menu > li {
            height: 30px;
            background: #fff;
          }
    
          .third-level-menu > li:hover {
            background: #f1f1f1;
          }
    
          .second-level-menu {
            position: absolute;
            top: 30px;
            left: 0;
            width: 150px;
            list-style: none;
            padding: 0;
            margin: 0;
            display: none;
          }
    
          .second-level-menu > li {
            position: relative;
            height: 30px;
            background: #fff;
          }
    
          .second-level-menu > li a {
            color: #333;
            float: left;
            padding-left: 23px;
          }
    
          .second-level-menu > li:hover {
            background: #f1f1f1;
          }
    
          .top-level-menu {
            list-style: none;
            padding: 0;
            margin: 0;
          }
    
          .top-level-menu > li {
            position: relative;
            float: right;
            height: 30px;
            width: 100px;
            background: transparent;
            margin-top: 20px;
            text-align: center;
            font-size: 14px;
          }
    
          .top-level-menu > li:hover {
            background: #fff;
          }
    
          .top-level-menu li:hover > ul {
            display: inline;
          }
    
          .top-level-menu a {
            color: #fff;
            text-decoration: none;
            display: block;
            line-height: 30px;
          }
    
          .top-level-menu a:hover {
            color: #333;
          }
          /* class style add */
          .dropdown:hover a {
            color: #333;
          }
          /* end */
        
    <!DOCTYPE html>
    <html lang="en">
      <head>
        <meta charset="UTF-8" />
        <meta http-equiv="X-UA-Compatible" content="IE=edge" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <title>Document</title>
       
      </head>
      <body>
        <ul class="top-level-menu">
          <li><a href="index1.html">Contact</a></li>
          <li><a href="#">Gallery</a></li>
          <li><a href="#">Travel</a></li>
          <!-- dropdown class added -->
          <li class="dropdown">
            <!-- end -->
            <a href="#">General</a>
            <ul class="second-level-menu dropdown-content">
              <li><a href="#">People</a></li>
              <li><a href="#">Defense</a></li>
              <li>
                <a href="#">Cities</a>
                <ul class="third-level-menu">
                  <li><a href="#">Moscow</a></li>
                  <li><a href="#">Vladivostok</a></li>
                  <li><a href="#">Kazan</a></li>
                  <li><a href="#">Sochi</a></li>
                </ul>
              </li>
              <li><a href="#">History</a></li>
              <li><a href="#">Demographics</a></li>
              <li><a href="#">Geographics</a></li>
              <li><a href="#">Culture</a></li>
            </ul>
          </li>
          <li><a href="#">Home</a></li>
        </ul>
      </body>
    </html>

    【讨论】:

    • 哦,是的,我明白了。有用。非常感谢!
    • 欢迎您。请接受我的正确回答。 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-01-07
    • 2020-11-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多