2012-04-27 45 views
0

我正在使用jQuery在我的導航(ul li.active)的活動列表元素中添加圖像。工作正常。LI中IMG的絕對位置

爲了達到設計目的,我想絕對定位這個img並添加一個left: 50%;使其居中。在除Windows上的Firefox(最新版本)和Windows XP上的Safari上的各種瀏覽器中都能正常工作。 這些應用left: 50%;相對於UL而不是LI具有position: relative;

它在哪裏工作,圖像顯示居中,低於我的LI上的內容。

URL:http://aerokure.steveforest.com/produits/insecticides-pour-le-jardin.html 這是徽標下方的黑色菜單。

試圖把display: block;放在img上,正如一些人所暗示的:沒有。

什麼?

由於

+1

永遠記住Web開發人員的口頭禪:如果它工作在IE瀏覽器,而不是一個現代的瀏覽器,那麼我的代碼是錯誤的。 – Rob 2012-04-27 14:01:38

回答

1

我發現這個問題

移除高度= ul元素

添加浮動:左= li元素

餘量:0; = li元素

它會正常工作

+0

它的工作原理,但它帶來了一個空的空間在我的列表末尾... – 2012-04-27 17:17:43

+0

如果我改變顯示:表;在ul上顯示:table-row ;,它解決了這個問題,但我失去了邊界半徑... – 2012-04-27 17:20:57

0

我認爲你需要改變從「表單元格」,以列表項的顯示:

display: inline-block; 

,然後取下:

margin-bottom: 8px; 

造型。這似乎是對我來說(OSX上的Firefox)的伎倆。

如果你把陰性切緣,圖像的寬度的一半,其實你可以得到它爲中心:

margin-left: -10px; 
+0

謝謝你的幫助。不幸的是,這不會有幫助,因爲table-cell是我發現獲得等於LI而沒有寬度值的唯一方式。當該網站位於CMS中,由客戶編輯時非常有用。 – 2012-04-27 17:14:16