CSS水平导航,图像交换无法正常工作

时间:2012-11-28 21:18:05

标签: html css navigation horizontallist

无法弄清楚我做错了什么......

http://tacticaloffense.com/indexNew.php

这是我的HTML:

  <div id="headerTopNav">
    <ul id="topNav">
      <li id="home"><a href="index.php" class="home">Home</a></li>
      <li id="about"><a href="about.php" class="about">About</a></li>
      <li id="products"><a href="shop/index.php" class="products">Products</a></li>
      <li id="wpNews"><a href="news/index.php" class="wpNews">News</a></li>
      <li id="contact"><a href="contact.php" class="contact">Contact</a></li>
    </ul>
  </div>

这是我的CSS:

#headerTopNav {
    position:absolute;
    top:11px;
    left:520px;
    height:30px;
}
#topNav {
    height:30px;
    padding:0;
    margin:0;
    display:inline;
}
#topNav li {
    list-style:none;
    display:inline;
}
#topNav li:after {
    border-right:1px solid #063d04;
}
#topNav li:last-child {
    border:none;
}
#topNav a {
    background:url(../img/nav/nav_map.png);
    display:inline-block;
    height:30px;
    text-indent:-9000px;
}
#topNav a.home,
#topNav a.about,
#topNav a.products,
#topNav a.wpNews,
#topNav a.contact {
    height:30px;
}
#topNav li#home, #topNav a.home {
    width:77px;
}
#topNav li#about, #topNav a.about {
    width:102px;
}
#topNav li#products, #topNav a.products {
    width:99px;
}
#topNav li#wpNews, #topNav a.wpNews {
    width:72px;
}
#topNav li#contact, #topNav a.contact {
    width:92px;
}

#topNav a.home:link, #topNav a.home:visited {
    background:url(../img/nav/nav_map.png) no-repeat -246px 0px;
}
#topNav a.home:hover {
    background:url(../img/nav/nav_map.png) no-repeat -246px -30px;
}
#topNav a.about:link, #topNav a.about:visited {
    background:url(../img/nav/nav_map.png) no-repeat 0px 0px;
}
#topNav a.about:hover {
    background:url(../img/nav/nav_map.png) no-repeat 0px -30px;
}
#topNav a.products:link, #topNav a.products:visited {
    background:url(../img/nav/nav_map.png) no-repeat -570px 0px;
}
#topNav a.products:hover {
    background:url(../img/nav/nav_map.png) no-repeat -570px -30px;
}
#topNav a.wpNews:link, #topNav a.wpNews:visited {
    background:url(../img/nav/nav_map.png) no-repeat -447px -60px;
}
#topNav a.wpNews:hover {
    background:url(../img/nav/nav_map.png) no-repeat -447px -90px;
}
#topNav a.contact:link, #topNav a.contact:visited {
    background:url(../img/nav/nav_map.png) no-repeat -140px -60px;
}
#topNav a.contact:hover {
    background:url(../img/nav/nav_map.png) no-repeat -140px -90px;
}

任何人都可以帮忙吗?我正在尝试使用图像进行水平导航菜单,以便您在每个链接上看到一个图像,当您将鼠标悬停在每个链接上时,可以看到另一个图像。共有10张图片。

2 个答案:

答案 0 :(得分:0)

将内联放在ul类中。 你还应该为li元素应用宽度。

答案 1 :(得分:0)

这是涵盖菜单的#logo。将宽度应用于徽标或将z-index应用于菜单。下面的一个解决了你的问题。

这个

#logo {
  padding-left: 45px;
  padding-top: 21px;
  position: relative;
  width: 360px;
}

或者这个

#topNav {
  display: inline;
  height: 30px;
  margin: 0;
  padding: 0;
  position: relative;
  z-index: 100;
}