2009-10-23 40 views
3

我試圖找出這個bug。這是一個已知的問題,還是新的?有一種解決方法(如變焦:1或立場:相對我可以添加到解決這個問題),idealy沒有在這裏修改HTML,但只是增加了它。IE8 CSS /組合框的bug(出現怪異的文字)

如果顯示下面的HTML在IE8中,你會看到從選擇(組合框)的文本,顯示兩次。一個在組合框外。這弄亂了我的文檔流程(更不用說看起來很奇怪)。

<html><body> 
<div style="width: 800px;"> 
<div style="float: right" >  
</div> 
<div style="display: none"> 
    ijklmno 
</div> 
<div style="float:left"> 
    <select> 
    <option>abcdef</option> 
    </select> 
    <div style="float: right"> 
    </div> 
</div> 
</div> 
</body></html> 
+0

出事了這樣一個問題?代碼在哪裏?確保點擊代碼按鈕或每行至少放置四個空格。 – Abel 2009-10-23 00:29:09

+0

去過,因爲我用的校驗寫組合框一會兒。 – alex 2009-10-23 00:32:57

+0

呵呵不錯。 :)真棒錯誤。 :D使第一個div實際顯示修復了這個問題。這很好,很奇怪。 – 2009-10-23 01:03:10

回答

3

這絕對是一個錯誤,因爲你在佈局樣式規則中非常明確。但這也是一個非常奇怪的安排。如果您取消隱藏隱藏的div,添加文本或隱藏選擇下面的div,問題就會消失。我最好的猜測是,因爲你有一個隱藏的,一個空的,即是忽略了浮,並試圖以適應他們的對方,這迫使該選項下的頂部,但由於替代選擇住宿重疊塊級元素,它在選擇內顯示選項。

很奇怪和一個非常酷的漁獲物。您的選項,我看到他們是要麼添加一些內容到最後一個DIV(非換空間,可能)或隱藏DIV(顯示:無),或兩者兼而有之。

在Firefox中,最後一個div也不是浮動的,並且與select重疊(可以通過使用開發人員工具欄概述塊級元素來判斷),這讓我認爲Firefox只是處理重疊塊級別元素。

如果將最後一個div有一個邊界,你會看到,它不是浮到主分區的權利。