css菜单图像背景左

时间:2015-10-18 09:04:47

标签: html css

我有一个菜单ul li,我想在每个li中放一个不同的图像:

<ul id="menu">

<li class="home">
<a href="$urlsite/home">home</a>
</li>

<li class="sells">
<a href="$urlsite/sells">Sells</a>
</li>

<li class="message">
<a href="$urlsite/message">Message</a>
</li>

</ul>

CSS

#menu {
 position:relative;
 width: 100%;
 padding: 0;
 margin-top:0px;
 box-sizing: border-box;
 font-weight:bold;
}
#menu li {
 list-style: none;
 text-align:left;
 padding-left:20px;
 height:40px;
 line-height:40px;
 vertical-align: middle;
 border-bottom:0px;
}
#menu li a {
 margin:0;
 text-decoration:none;
 width:100%;
 height:100%;
 display: inline-block;
}

.home{
 background-image: url('http://infinitilinens.herokuapp.com/assets/icons/home_blue.png');
 background-size:20px;
 background-repeat: no-repeat;
 padding-left: 30px;
 display: block;
}

我的问题是,HOME ICON(和所有其他人)不在文本链接的前面。如何将图像与链接对齐? http://jsfiddle.net/954baet0/

3 个答案:

答案 0 :(得分:0)

如果您想将背景图片用作徽标(请注意它无法点击),您可以使用background-position property

祝你好运

答案 1 :(得分:0)

您只需将此行代码添加到.home:

background-position: 0px 11px;

答案 2 :(得分:0)

您可以使用background-position

  

第一个值是水平位置,第二个值是   垂直

#menu li {
 list-style: none;
 text-align:left;
 padding-left:20px;
 height:40px;
 line-height:40px;
 vertical-align: middle;
 border-bottom:0px;
background-position: 2px center;
}

jsfiddle