1

为什么内联对齐在 Opera 上不起作用?

演示:http: //jsfiddle.net/KKEKW/

使用 Firefox 或 Safari 看起来就像这样。这就是我想要的样子。

在此处输入图像描述

有了 Opera,一切都会像这样直截了当。我不想要它。

在此处输入图像描述

HTML

<div class ="social">
    <div class ="row">  
        <div class="twitter">
            twitter content
        </div>
        <div class="facebook">
            facebook content
        </div>
    </div>
    <div class ="row">
        <div class="google">
            google content
        </div>
        <div class="instagram">
            instagram content
        </div>        
    </div>
</div>

CSS

div.social {
  margin-top: 10px;
  display: inline-block;
  height: 90px;
  overflow: hidden;
  text-align: left;
  vertical-align: bottom;
}


div.row{    
}

div.twitter {
  float: left;
  width: 200px;
  height: 30px;
  overflow: hidden;
  display:inline-block;
}

div.facebook {
  float: left;
  width: 170px;
  height: 30px;
  overflow: hidden;
  display:inline-block;
}

div.google {
  float: left;
  width: 200px;
  height: 25px;
  overflow:hidden;
  display:inline-block;
}

div.instrgram {
  float: left;
  width: 170px;
  height: 30px;
  overflow: hidden;
  display:inline-block;
}
4

2 回答 2

2

float:left并且display:inline-block互相矛盾。如果您浮动一个元素,它会使该display属性变得无关紧要。

因此,从您的元素中删除 thefloat或 the 。display不要试图同时使用它们;它不会按您期望的方式工作。

display:inline-block无论如何,在我看来,您似乎可以通过指定on.row而不是.twitter,.facebook等元素来实现您想要的。

于 2013-02-01T12:26:36.723 回答
0

不确定这是否是您想要的,但它对我有用(CSS/HTML 也更少):

HTML:

<section class="left">
    <div>Twitter</div>
    <div>Google</div>
</section>

<section class="right">
    <div>Facebook</div>
    <div>Instagram</div>
</section>

CSS:

div {
    display: block;
    padding: 5px;
}

.left {
    float: left;
}

.right {
    float: left;
}

jsfiddle 链接

于 2013-02-01T12:15:18.293 回答