CSS ul下拉列表问题

时间:2016-02-19 22:38:05

标签: html css drop-down-menu html-lists

之前我曾问过这样的问题,但没有得到答案。这很重要,因为它是我网站不可或缺的一部分。

我正在尝试创建一个下拉菜单。 “团队”和“新闻”链接(当您将鼠标悬停在它们上面)是个问题。我希望他们下面的链接与他们的父母一致。

我试图用填充来解决这个问题,但已经无处可去。

请帮忙。

http://codepen.io/DocRow10/pen/hjIkq

<body>
        <div id="container">
            <div id="banner" class="clearfix">

                        <img id="crest" src="images/cecc-logo.png" />
                        <h1>Test Website</h1>
            </div>
            <nav class="clearfix">
                <ul class="clearfix">
                    <li><a href="#">Home</a></li>
                    <li><a href="#">About</a></li>
                    <li><a href="#">News</a>
                        <ul>
                            <li><a href="#">Social Events</a></li>
                        </ul>
                    </li>
                    <li><a href="#">Team</a>
                        <ul>
                            <li><a href="#">Players</a></li>
                            <li><a href="#">Fixtures/Results</a></li>
                            <li><a href="#">Statistics</a></li>
                        </ul>
                    </li>
                    <li><a href="#">Gallery</a></li>
                    <li><a href="#">Contact</a></li>  
                </ul>
                <a href="#" id="pull">Menu</a>
            </nav>
            <main>

            </main>
            <footer>

            </footer>
        </div>

    </body>
</html>





body {
  background-color: rgb(200, 220, 255);
/* #455868 */

}

#container {
    height: 1000px;
    margin-left: auto;
    margin-right: auto;
}

#banner {
    width: 100%;
    text-align: center;

}

#crest {
    height: 150px;
    width: 180px;
    display: inline-block;
}

#banner h1 {

    display: inline-block;
}
/* Bat Colour rgb(38, 124, 196); */


@media only screen and (min-width : 480px) {


    #banner h1 {
        font-size: 30px;
        display: inline-block;
    }
}

@media only screen and (min-width : 768px) {
    #banner h1 {
        font-size: 36px;
        display: inline-block;
    }
}
@media only screen and (min-width : 980px) {
    #banner h1 {
        font-size: 47px;
        display: inline-block;
    }
}

nav {
    height: 40px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    background-color: rgb(238, 0, 0);
    font-size: 13pt;
    font-family: neris;
    border-bottom: 2px solid #283744;
}

nav > ul {
    padding: 0;
    margin: 0 auto;
    width: 600px;
    height: 40px;
}

nav > ul > li {
    display: inline;
    float: left;
}

nav ul a {
    color: #fff;
    display: inline-block;
    width: 100px;
    text-align: center;
    text-decoration: none;
    line-height: 40px;
    text-shadow: 1px 1px 0px #283744;
}

nav li a {
    border-right: 1px solid #576979;
    box-sizing:border-box;
    -moz-box-sizing:border-box;
    -webkit-box-sizing:border-box;
}
nav li:last-child a {
    border-right: 0;
}

nav a:hover, nav a:active {
    background-color: #8c99a4;
}

nav a#pull {
    display: none;
} 

nav ul li:hover ul {
    display: block;
}

nav ul ul {
    display: none;
    position: absolute;
}

nav ul ul li {
    display: block;
}

main {
    width: 90%;
    height: 200px;
    margin-right: auto;
    margin-left: auto;
    background-color: rgb(38, 124, 196);
}

footer {
    width: 90%;
    height: 50px;
    margin-right: auto;
    margin-left: auto;
    background-color: rgb(0, 0, 0);
}

3 个答案:

答案 0 :(得分:1)

如果我理解正确,这应该会有所帮助:

ul ul {
  padding: 0;
}

答案 1 :(得分:0)

你错过了

nav ul ul li { padding: 0; }

答案 2 :(得分:0)

我认为这会对你有帮助,

<强> HTML

 <body>
      <div id="container">
        <div id="banner" class="clearfix">

          <img id="crest" src="images/cecc-logo.png" />
          <h1>Test Website</h1>
        </div>
        <nav class="clearfix">
          <ul class="clearfix">
            <li><a href="#">Home</a></li>
            <li><a href="#">About</a></li>
            <li><a href="#">News</a>
              <ul>
                <li><a href="#">Social Events</a></li>
              </ul>
            </li>
            <li><a href="#">Team</a>
              <ul>
                <li><a href="#">Players</a></li>
                <li><a href="#">Fixtures/Results</a></li>
                <li><a href="#">Statistics</a></li>
              </ul>
            </li>
            <li><a href="#">Gallery</a></li>
            <li><a href="#">Contact</a></li>
          </ul>
          <a href="#" id="pull">Menu</a>
        </nav>
        <main>

        </main>
        <footer>

        </footer>
      </div>

    </body>

    </html>

<强> CSS

body {
  background-color: rgb(200, 220, 255);
  /* #455868 */
}

#container {
  height: 1000px;
  margin-left: auto;
  margin-right: auto;
}

#banner {
  width: 100%;
  text-align: center;
}

#crest {
  height: 150px;
  width: 180px;
  display: inline-block;
}

#banner h1 {
  display: inline-block;
}


/* Bat Colour rgb(38, 124, 196); */

@media only screen and (min-width: 480px) {
  #banner h1 {
    font-size: 30px;
    display: inline-block;
  }
}

@media only screen and (min-width: 768px) {
  #banner h1 {
    font-size: 36px;
    display: inline-block;
  }
}

@media only screen and (min-width: 980px) {
  #banner h1 {
    font-size: 47px;
    display: inline-block;
  }
}

nav {
  height: 40px;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  background-color: rgb(238, 0, 0);
  font-size: 13pt;
  font-family: neris;
  border-bottom: 2px solid #283744;
}

nav > ul {
  padding: 0;
  margin: 0 auto;
  width: 600px;
  height: 40px;
}

nav > ul > li {
  display: inline;
  float: left;
}

nav > ul > li > ul {
  padding: 0;
}

nav > ul > li > ul li a {
  border: 0;
  text-align: left;
  width: 100%;
}

nav ul a {
  color: #fff;
  display: inline-block;
  width: 100px;
  text-align: center;
  text-decoration: none;
  line-height: 40px;
  text-shadow: 1px 1px 0px #283744;
}

nav li a {
  border-right: 1px solid #576979;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}

nav li:last-child a {
  border-right: 0;
}

nav a:hover,
nav a:active {
  background-color: #8c99a4;
}

nav a#pull {
  display: none;
}

nav ul li:hover ul {
  display: block;
}

nav ul ul {
  display: none;
  position: absolute;
}

nav ul ul li {
  display: block;
}

main {
  width: 90%;
  height: 200px;
  margin-right: auto;
  margin-left: auto;
  background-color: rgb(38, 124, 196);
}

footer {
  width: 90%;
  height: 50px;
  margin-right: auto;
  margin-left: auto;
  background-color: rgb(0, 0, 0);
}