更改li类重新排序列表

时间:2017-01-05 03:02:31

标签: html css list html-lists

我有一个横幅样式列表,其中一个项目是下拉列表。由于某种原因,列表未按正确顺序显示。应该有四个项目,Home,Products and Materials,Testimonials和Contact,其中第二项应该是下拉列表。相反,最后显示的是下拉项目。

HTML:

<ul class="banner">
  <li class="banner"><a href="#home"><H2>Home</H2></a></li>
  <li class="dropdown">    
      <a href="#javascript:void(0)" class="dropbtn"><h2>Products and Materials</h2> </a>
      <div class="dropdown-content">
       <a href="#student"><h4>Materials for School settings</h4></a>
       <a href="#adult"><h4>Materials for adult clinical settings</h4></a>
       <a href="#teletherapy"><h4>Materials for Teletherapy</h4></a>
      </div>
  </li>
  <li class="banner"><a href="#home"><H2>Testimonials</H2></a></li>
  <li class="banner"><a href="#home"><H2>Contact</H2></a></li>
</ul>

CSS:

/*bannner buttons*/
ul.banner {
    list-style-type: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
    background-color: #333;
}

li.banner {
    float: left;
}

li a, .dropbtn {
    display: inline-block;
    color: white;
    text-align: center;
    padding: 14px 16px;
    text-decoration: none;
}

li a:hover, .dropdown:hover .dropbtn {
    background-color: #00e5ee;
}

li.dropdown {
    display: inline-block;
}


/*dropdown button*/

.dropdown-content {
    display: none;
    position: absolute;
    background-color: #f9f9f9;
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
}

.dropdown-content a {
    color: black;
    padding: 5px 15px;
    text-decoration: none;
    display: block;
    text-align: left;
}

.dropdown-content a:hover {background-color: #f1f1f1}

.dropdown:hover .dropdown-content {
    display: block;
}

2 个答案:

答案 0 :(得分:3)

你错过了添加一个浮动

li.dropdown {
    display: inline-block;
    float: left;
}

答案 1 :(得分:1)

在CSS中,而不是写li.banner,将其更改为.banner li,如下所示:

ul.banner {
    list-style-type: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
    background-color: #333;
}

.banner li {
    float: left;
}

li a, .dropbtn {
    display: inline-block;
    color: white;
    text-align: center;
    padding: 14px 16px;
    text-decoration: none;
}

li a:hover, .dropdown:hover .dropbtn {
    background-color: #00e5ee;
}

li.dropdown {
    display: inline-block;
}


/*dropdown button*/

.dropdown-content {
    display: none;
    position: absolute;
    background-color: #f9f9f9;
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
}

.dropdown-content a {
    color: black;
    padding: 5px 15px;
    text-decoration: none;
    display: block;
    text-align: left;
}

.dropdown-content a:hover {background-color: #f1f1f1}

.dropdown:hover .dropdown-content {
    display: block;
}

从所有列表项中删除横幅类

<ul class="banner">
  <li><a href="#home"><H2>Home</H2></a></li>
  <li class="dropdown">    
      <a href="#javascript:void(0)" class="dropbtn"><h2>Products and Materials</h2> </a>
      <div class="dropdown-content">
       <a href="#student"><h4>Materials for School settings</h4></a>
       <a href="#adult"><h4>Materials for adult clinical settings</h4></a>
       <a href="#teletherapy"><h4>Materials for Teletherapy</h4></a>
      </div>
  </li>
  <li><a href="#home"><H2>Testimonials</H2></a></li>
  <li><a href="#home"><H2>Contact</H2></a></li>
</ul>