2011-03-23 208 views
0

http://testing.ipalaces.org/在IE9中看起來不同,其中子導航中的第二個LI使上邊框變爲頂點。它現在的寬度似乎適用於每個主要瀏覽器,但IE9。如果我將它設置爲恰好3px,那麼它在IE9中運行良好。IE9寬度問題

這是一個已知的錯誤嗎?我可以解決這個問題,而無需進行條件IE9 CSS調用?

+0

不知道你的意思。我沒有看到菜單和浮在Chrome,FF4和IE9有什麼區別「Welcome」下面有一段空白,你可以發表一個圖片嗎? – 2011-04-02 13:46:28

回答

1

問題是,如果沒有明確的寬度,#sub-navigation li.selected會因爲字體渲染而在IE 9中渲染幾個像素,從而中斷下一個浮動元素。強制寬度將修復它。

另外,大膽的Verdana渲染比較寬,所以你應該考慮從字體堆棧中刪除它。

#sub-navigation li { font:700 16px/1 geneva, sans-serif; } 
#sub-navigation li.selected { width:105px; } 
+0

是的,我知道我可以這麼做,但是我說我不想使用條件IE語句 – ParoX 2011-03-27 02:42:32

+0

查看最新的答案 – Marcel 2011-03-27 03:22:25

+0

這個適用於主頁面,但請注意,每個頁面的寬度對於li.selected都是不同的。我正在尋找一個常規修復程序,目前的修復程序現在是pro在我的頭文件php文件中插入一切,並檢查IE9的方式,因爲我不想看到任何可見的IE9變通辦法。 – ParoX 2011-03-29 21:21:12

0

如何文本溢出?

+ CSS:

#sub-navigation li span { 
white-space: nowrap; 
width: 100%; 
overflow: hidden; 
text-overflow: ellipsis; 
} 

試試這個,反正我沒有IE(蘋果rulz),但在我的工作場所,我們通常優化IE的網站了。如果這不起作用,我明天會檢查它。

+1

這對IE9或其他任何瀏覽器都沒有影響。這意味着問題仍然存在於IE9中 – ParoX 2011-03-30 21:03:12

+0

因此,您發佈了一個答案,但實際上並未確認它是否有效? – SomeKittens 2013-10-21 23:55:32

0

我可以問一下,爲什麼在導航中最後一個<li>裏面的所有下拉菜單都是嵌套列表?

如果是我,我會將每個下拉列表放在自己的列表中,作爲父鏈接的子項目。 這樣,您可以繼承父項的下拉項的水平邊界,並且它應該更直接地匹配寬度。

此外,代碼將更符合邏輯地閱讀,並且在未來更容易擴展。

+0

我猜是因爲下拉是「品牌」,我覺得他們應該在父母項下,讓他們下降。雖然不需要定義設置寬度以匹配上面的那個是理想的,但我會考慮這一點。 – ParoX 2011-03-30 21:04:10

0

您應該爲子菜單中的所有li設置固定寬度,具體取決於所需的數量。現在第一個列表元素應該設置爲寬度:107px。

測試它,只需添加style="width:107px「到<li class="selected">

祝你好運:)

+0

如果菜單項的數量沒有變化,爲什麼不保持寬度固定? – cmplieger 2011-03-30 22:08:48

+0

他們改變,瀏覽網站。 – ParoX 2011-03-31 03:01:25