我完全被這個困惑,並沒有完全理解IE7的問題。有問題的網頁是here,我正在談論頂部灰色菜單欄。在所有其他合理的現代瀏覽器,它看起來很好。在IE7上(也可能是IE6,但我們不支持該功能),具有float:right
的div.navArrow
元素會一直偏向右側,使得父元素<li>
佔用頁面的剩餘寬度。IE7 float right導致父元素佔用全寬
我不知道從哪裏開始解決這個問題。請有任何想法嗎?
我完全被這個困惑,並沒有完全理解IE7的問題。有問題的網頁是here,我正在談論頂部灰色菜單欄。在所有其他合理的現代瀏覽器,它看起來很好。在IE7上(也可能是IE6,但我們不支持該功能),具有float:right
的div.navArrow
元素會一直偏向右側,使得父元素<li>
佔用頁面的剩餘寬度。IE7 float right導致父元素佔用全寬
我不知道從哪裏開始解決這個問題。請有任何想法嗎?
我已經通過申請IE7及以下的特殊的CSS實際上解決了這個問題。我給父母<li>
一個float:right
風格,和div.navArrow
一個float:none
。這似乎是訣竅。
Meybe會幫助你使用任何形式的。根據經驗我知道position: relative;
不能修復,你可以在IE7中用zoom: 1;
修復它。 Facebook的使用此clearfix:
.clearfix{
zoom: 1;
}
.clearfix::after {
clear: both;
content: ".";
display: block;
font-size: 0;
height: 0;
line-height: 0;
visibility: hidden;
}
如果沒有關係的內容不從容器中流出的,你可以用overflow: hidden;
設置的容器和使用工作得很好。
您的DOCTYPE之前有一個空格,並且最有可能觸發此問題。此外,定義一個適當的DOCTYPE(如<!DOCTYPE html>
)並驗證您的頁面,它的錯誤充滿。
嘗試使用div.navArrow元素的最小寬度。此外,爲了進行測試,請向父項li添加一個寬度,看看是否有所作爲。 IE7使用min-width屬性。另外,看看是否添加縮放:1有什麼區別。 –
請在下面發佈您的解決方案,然後接受您自己的答案。這是解決您自己的問題時使用本網站的正確方法。 – Sparky