为了账号安全,请及时绑定邮箱和手机立即绑定

background-position:后面的取值-30px 为什么取30px也是一样的效果 求解 谢谢!

http://img1.sycdn.imooc.com//57a5ad040001b1cb10760499.jpg

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>导航菜单</title>

<style type="text/css">

*{margin:0; padding:0; font-size:14px;}

a{color:#333;text-decoration:none}

.nav{list-style:none; height:30px; border-bottom:10px solid #F60; margin-top:20px; padding-left:50px;}

.nav li{float:left}

.nav li a{display:block; height:30px;text-align:center; line-height:30px; width:120px; background:url(http://img1.sycdn.imooc.com//53846438000168f901200060.jpg); margin-left:1px;}

.nav li a.on, .nav li a:hover{background-position:0 -30px;color:#fff;}

</style>


</head>

<body>


<ul class="nav">

    <li><a class="on" href="#">首  页</a></li>

    <li><a href="#">新闻快讯</a></li>

    <li><a href="#">产品展示</a></li>

    <li><a href="#">售后服务</a></li>

    <li><a href="#">联系我们</a></li>

  </ul>


</body>

</html>


正在回答

2 回答

.nav li a{display:block; height:30px;text-align:center; line-height:30px; width:120px; background:url(http://img1.sycdn.imooc.com//53846438000168f901200060.jpg) no-repeat ; margin-left:1px;}

你试着加上"no-repeat",就会发现只有-30px可以,30px就没背景了。


3 回复 有任何疑惑可以回复我~

背景图像的设置默认是左上角对齐,并且对图像进行平铺,所以对于height:60px 来说图片y轴上+30和-30显示的部分都是一样的。这样情况相当于padding是个窗口,背景图像在后面滚动了一遍。

1 回复 有任何疑惑可以回复我~
#1

macro2

我理解的是-30px,图片就移动出界了,不太明白你说的滚动的意思,难道图片可以循环往后翻折?
2016-08-29 回复 有任何疑惑可以回复我~
#2

爱吃葫芦娃 回复 macro2

图片确实是循环的,在整个平面进行平铺,我说的滚动也不对,其实就跟地板一样,很多一样的图片+30就是看到上面的那张,-30是看到下面的一张
2016-08-30 回复 有任何疑惑可以回复我~
#3

Airly 回复 macro2

程序里有种说法叫越界翻转
2016-10-04 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
导航条菜单的制作
  • 参与学习       123899    人
  • 解答问题       813    个

水平、垂直、圆角导航条菜单,让您的技术探索之路更高效

进入课程

background-position:后面的取值-30px 为什么取30px也是一样的效果 求解 谢谢!

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信