2012-08-27 44 views

回答

1

這是因爲IE 7及更低版本不支持默認block元素上的display:inline-block

如果你想與display:inline-block的元素,您可以:

  • 使用默認inline元素(例如<span>),並設置display:inline-block
  • 使用默認block元素(例如<div>),並設置display:inline

你有<div>元素,所以你需要:

<!--[if lte IE 7]> 
<style type="text/css"> 
.dialog-button, .horizontal-dialog-divider { 
    display: inline; 
} 
</style> 
<![endif]--> 

見這裏:http://jsfiddle.net/uQUTc/1/

它適用於IE7,但也許對IE6這招不起作用(我沒有,所以我不能測試它)。

但是,嚴重的是,爲什麼你要爲IE6編程?這是非常古老的,它不是一個兼容的瀏覽器。

編輯:

如果要對齊的元素,你可以使用

.dialog-button,.horizontal-dialog-divider,.dialog-text{vertical-align:middle} 

見這裏:http://jsfiddle.net/uQUTc/3/

+0

我只是在看到duskwuff的解決方案後試過這個。看到我對他的解決方案的評論。它在大多數情況下工作,但按鈕錯位:[新頁面圖像](http://i.imgur.com/ILXE2.png) – user886596

+0

@ user886596固定使用'vertical-align:middle' – Oriol

1

因爲IE6不支持display: inline-block

+0

添加顯示:內聯的確定,分隔線和取消似乎大部分工作,但兩個按鈕不完全對齊IE6。取消鏈接明顯低於按鈕。以下是IE6中的更新頁面:[新頁面圖像](http://i.imgur.com/ILXE2.png) – user886596

+0

嗯,是的 - 'display:inline-block'與'display:inline'是分開的一個原因。 – duskwuff

0

我想你最好能夠使用列表元素,帶浮點數:左

<ul> 
<li>Ok</li> 
<li>Cancel</li> 
</ul> 

ul li {list-style:none; float:left; padding:10px}