在ul中单独的div中水平对齐图像

时间:2015-01-16 10:31:30

标签: html css alignment html-lists

我正在尝试水平对齐图像,但它们都是彼此叠加的。

我对此非常陌生,所以很难解决这个问题!

任何帮助将不胜感激!

<div class="social">
     <ul>
       <div class="facebook">
          <li><a href="#"></a></li>
       </div>
       <div class="twitter">
          <li><a href="#"></a></li>
       </div>
       <div class="youtube">
          <li><a href="#"></a></li>
       </div>
       <div class="vimeo">
          <li><a href="#"></a></li> 
       </div> 
    </ul>
</div>

这是css

.social {
    width: 50%;
    margin: 0;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    margin-top: 30px;
    display: inline-block;
    position: relative;
}
.social ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
.social ul li {
    margin: 0;
    padding: 0;
    display: inline;
}
.facebook a:link {
    background-image: url(../img/facebook.png);
    width: 35px;
    height: 35px;
    background-position: left;
    display: block;
    border: none;
    outline: none;
    position: absolute;
}
.facebook a:hover {
    background-position: bottom;
}
.twitter a:link {
    background-image: url(../img/twitter.png);
    width: 35px;
    height: 35px;
    background-position: left;
    display: block;
    border: none;
    outline: none;
    position: absolute;
}
.twitter a:hover {
    background-position: bottom;
}
.youtube a:link {
    background-image: url(../img/youtube.png);
    width: 35px;
    height: 35px;
    background-position: left;
    display: block;
    border: none;
    outline: none;
}
.youtube a:hover {
    background-position: bottom;
}
.vimeo a:link {
    background-image: url(../img/vimeo.png);
    width: 35px;
    height: 35px;
    background-position: left;
    display: block;
    border: none;
    outline: none;
}
.vimeo a:hover {
    background-position: bottom;
}

以下是JSFiddle http://jsfiddle.net/hdnrwrmj/

中的代码

3 个答案:

答案 0 :(得分:1)

我建议删除div并将类名添加到li并删除绝对位置。 Fiddle

编辑:同时使用inline-block的{​​{1}}显示

HTML

li

CSS

<div class="social">
     <ul>
          <li class="facebook"><a href="#"></a></li>
          <li class="twitter"><a href="#"></a></li>
          <li class="youtube"><a href="#"></a></li>
          <li class="vimeo"><a href="#"></a></li> 

    </ul>
</div>

答案 1 :(得分:0)

以下是更新的HTML & CSS JSFIDDLE

我删除了ul中的div。它实际上不符合标准。

答案 2 :(得分:0)

Here is the updated fiddle:-
And put your <div> inside the <li>

http://jsfiddle.net/pnsqcL2t/