2013-02-01 39 views
1

爲什麼在線對齊在Opera上不起作用?爲什麼在線對齊在Opera上不起作用?

DEMO:http://jsfiddle.net/KKEKW/

使用Firefox或Safari它看起來很好,就像這樣。這是它看起來我想要的。

enter image description here

使用Opera這將是所有直了,就像這樣。我不想要它。

enter image description here

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; 
} 
+0

將'width:400px;'添加到'div.social'使它在Opera上運行。和IE9。 – Ove

+0

@Ove我不希望'div.social'的寬度,因爲它應該是響應。還有其他的方法嗎? – Foo

+0

我不知道是否有另一種方式來做到這一點,但這似乎工作。 – Ove

回答

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 link

+0

問題在於,如果左側的任何內容變得更強壯,則右側內容的左側邊緣將一直向右移動。它影響到不同行中的另一個內容。這就是爲什麼我有每一行。如果可能, – Foo

2

float:leftdisplay:inline-block相互矛盾。如果浮動一個元素,它會使display屬性不相關。

因此,從元素中刪除floatdisplay。不要試圖一次使用它們;它不會像你期望的那樣工作。

總之,在我看來,如果你能達到你想要通過指定.rowdisplay:inline-block而非.twitter.facebook等元素的東西。

+0

,您能否在DEMO中顯示? – Foo

+1

當涉及到更改浮動元素上的顯示時,Opera比其他瀏覽器更加繁瑣。你的'.instagram'類也有一個錯字(你有'.instrgram')。 http://jsfiddle.net/KKEKW/3/ – cimmanon

+0

@cimmanon您的代碼存在的問題是,如果左側的內容變得更強壯,則右側內容的左側邊緣將一直向右移動。它影響到不同行中的另一個內容。這就是爲什麼我有每一行。你能解決它嗎? – Foo

相關問題