2011-08-15 141 views
2

我有以下代碼:如何停止float:left div被div覆蓋?

<div> 
    <div onmouseover="this.style.color='red'" 
     onmouseout="this.style.color='blue'" 
     style="float:left"> 
     a 
     <br/> 
     b 
     <br/> 
     c 
    </div> 
    <div onmouseover="this.style.color='red'" 
     onmouseout="this.style.color='blue'" 
     style="position:relative;"> 
     Testing, one two three... 
    </div> 
</div> 

第一個div推動的第二個div到右側的文本,而不是第二個div本身,所以在第一內div的,a將由被掩蓋T在第二內格,和懸停在a不會觸發的onmouseover。

這是一個非常簡單的例子,但是如何獲得這種佈局,保留第二個div的position:relative並且不向其添加任何邊距,因爲第一個div可能會或可能不會顯示?第二個div會掩蓋第一個,這似乎很奇怪。

+0

有了你這裏列出的HTML /風格,這些元素不應該有重疊的文本。你確定這是複製問題的整個樣本嗎?你能否爲上下文提供更多的代碼,包括所有應用的樣式?在哪些瀏覽器/版本中遇到問題? –

+0

文字是不重疊的,但如果你出去試試這個代碼,你會看到onmouseover事件不工作的'了' – yuttadhammo

回答

4

如果我理解正確的你..把float: left;到第二個div爲好。

+0

是的,你明白我的完美...感謝一大堆,那就像一個魅力:) – yuttadhammo

+0

感謝您的答案。簡單,但做到了。 –