2013-03-15 124 views
1

我需要圍繞已向下推動的浮動元素顯示文本。在HTML/CSS很簡單:如何解決此Safari瀏覽器浮動渲染問題

<div id="container"> 
    <div id="shim"></div> 
    <div id="myimg"></div> 
    <p>This is a test to demonstrate the float overwriting issue. The blue box represent an image that I don't wish the text to overwrite...</p> 
</div> 

CSS:

#container { 
    width: 200px; 
} 

#shim { 
    float:right; 
    width: 1px; 
    height: 40px; 
    background-color: red; 
} 

#myimg { 
    clear:both; 
    float:right; 
    width: 100px; 
    height: 40px; 
    background-color: blue; 
} 

它完美地在Chrome和Firefox,但在Safari中的文本覆蓋我的浮動元素。

我創建了一個小提琴證明了這個錯誤(顯然,你需要野生動物園看到它):

http://jsfiddle.net/8JLFp/

任何人都可以找到一個解決方案或建議這樣做的另一種方式?

+0

它看起來不錯的Safari與Chrome的預期5.1.7 – Sowmya 2013-03-15 10:03:19

+0

的Safari 6.0.2不工作。 – soyuka 2013-03-15 10:03:44

+0

它使用Safari 6.0.2。它不適用於該版本。 – tarmes 2013-03-15 10:09:33

回答

1

Please check the same issue on this site. May be this helps you.

可能的解決方案。

  1. 嘗試增加明確:雙方的div
  2. 使用溢出:隱藏
+0

嗯,將這些DIV添加到哪裏?不知道如何溢出:隱藏將有所幫助.. – tarmes 2013-03-15 10:10:19

+0

div {overflow:hidden} ...將此添加到css中。 – 2013-03-15 10:12:15

+0

您是否在2008年9月11日JANENE所說的鏈接中嘗試瞭解決方案。 – 2013-03-15 10:14:26