2012-03-21 57 views
1

我試圖在div中放置一個div。 外部div具有固定寬度和heigt,內部div包含一些文本,具有固定高度並自動適合外部div的寬度(默認行爲,不含「寬度:100%」)。位置:在IE7中絕對降低寬度

當我現在添加位置:相對於外部div和位置:絕對+底部:0到內部div,我只想內部div移動到外部div的底部,但保持相同的寬度之前有過。這在大多數瀏覽器(Internet Explorer 8+,Firefox,Opera)中都可以正常工作,但在IE7中,它會減小寬度以適應內部div內的文本。

有沒有一種乾淨而有效的方法來防止IE7中出現這種不同的行爲?

這裏你可以看到一個例子:http://www.loud.fm/tmp(我在功能的滑蓋盒的內底談論黑匣子)預先感謝您! :)

回答

4

既然你已經使用絕對定位將其鎖定在底部爲什麼不加

left: 0; 
right: 0; 

你的CSS以及。

+0

這工作。謝謝!我期待像「display:block」這樣的東西幫助,但它沒有。 – 2012-03-23 13:43:24

0

當你執行position: absolute,你打破了一些關係。在你提到的例子中,你會注意到黑盒的div屬於li元素,li元素的靜態寬度設置爲590px。你可以通過在負載上使用javascript來動態設置內部div的寬度,以處理所有情況。否則,請設置一個與父級相匹配的靜態寬度大小。

+0

這將是一種解決方法,但這意味着我要麼使用額外的JS(如果不是絕對必要的話,我不想使用額外的JS)或設置固定寬度(這意味着我必須更改它手動,如果我改變父母的寬度)。它不會是我稱之爲補償IE7不當行爲的乾淨解決方案。不過謝謝你的貢獻,無論如何。 – 2012-03-23 13:47:55

0

我有一個非常類似的問題,Div的寬度被IE7改變了。一個簡單的樣式標籤爲我解決了這個問題:

min-width: 100%; 

經過數小時的反覆試驗,這一切都花了。希望能幫助到你!