2012-04-07 101 views
0

我在我的站點上有一個分頁控件,它的容器元素設置爲margin:auto,以便分頁控件在元素中居中。它在除IE7以外的所有瀏覽器都很好用。事實上,我剛剛意識到我的網站有幾個問題與IE7,我試圖通過他們所有。不過,我一直堅持這一段。margin:auto在IE7中不工作

看看this page

(我知道在這個頁面上還有其他的IE7問題,首先關注尋呼控制)。如果您使用IE9,則可以在菜單欄中點擊F12並將「瀏覽器模式」設置爲IE7。將其與任何其他瀏覽器/版本中的相同頁面進行比較。

任何人都可以告訴我爲什麼這是基於我使用的CSS/HTML發生?我一直在努力,看起來像幾個小時,我真的沒有得到它的任何地方。

+1

你可以重新創建你的問題在jsfiddle什麼的,所以我們不必篩選你的網站上的數百行代碼? – 2012-04-07 04:09:30

+0

我在想有人可能會使用IE開發人員工具(如Firebug)來檢查代碼/樣式,而不是實際閱讀源代碼。我確信這只是我錯過的一件簡單的事情。 – Scott 2012-04-07 04:12:08

+0

我在IE7與其他瀏覽器中看到的唯一區別是圓邊和每頁頂部的過濾器。沒有看到有'margin:auto'的問題。哪個元素具體存在這個問題?也許我只是想念它... – 2012-04-07 04:21:11

回答

5

問題是,您依靠display: tableul收縮到其內部的寬度li s。不幸的是,display: table is not supported in IE7.

切換到display: inline-block是解決這個問題的一種方法。

previous_next_container_forum ul.list_paging,刪除display: tableand add

display: inline-block; 
*display: inline; 
zoom: 1; 

ul現在是完全一樣寬的li的內線吧,使用display: table

要使其居中,您需要將text-align: center添加到父元素,例如.previous_next_container_forum

+0

真棒,感謝您的快速,簡潔的答案,工程! – Scott 2012-04-07 04:50:21