【发布时间】:2012-01-26 08:51:12
【问题描述】:
我正在尝试使用 CSS 让导航栏定位在图像上。然而,我似乎无法正确定位,不断发生的情况是图像的前 200 像素不断出现,而不是背景定位的下 200 像素,如果这有任何意义的话。这是代码,请帮忙。
HTML:
<div id="topnav">
<ul>
<li id="nav-home"><a href="index.html">Feature Product<span></span></a></li>
<li id="nav-all"><a href="shop_owners.html">All Products<span></span></a></li>
<li id="nav-how"><a href="all_products.html">How It Works<span></span></a></li>
</ul>
</div>
CSS:
#topnav {
position: relative;
left: 150px;
top: 100px;
margin: 0;
padding: 0;
height: 50px;
}
#topnav ul {
list-style-type: none;
text-align: center;
line-height: 50px;
}
#topnav ul li {
float: left;
}
#topnav ul li a {
background: url(../nav-bar-2.png);
background-repeat: no-repeat;
display: block;
height: 50px;
position: relative;
}
#nav-home {
width: 200px;
}
#nav-all {
width: 200px;
background-position: -200 0px
}
#nav-how {
width: 200px;
background-position: -400px 0px
}
#topnav ul li a span {
background: url(../nav-bar-2.png) no-repeat scroll bottom left;
display: none;
position: absolute;
top: 0;
left: 0;
height: 50px;
width: 100%;
z-index: 100;
}
#topnav li a span:hover {
cursor: pointer;
}
#nav-home span {
background-position: 0px -50px
}
#nav-all span {
background-position: -200 -50px;
}
#nav-how span {
background-position: -400 -50px;
}
【问题讨论】:
-
那是您的确切代码吗?您的值缺少几个像素。
-
是的。对不起,我不知道你在说哪些。我正在尝试为我的班级制作网页,但我不太擅长。
-
您有几个位置不正确。背景位置:-200 -50px;每个值都需要有一个测量值(px),即-200px -50px;
标签: html css background positioning