2009-08-05 38 views
0

您好我正在使用asp.net頁面的div。這裏我想動態地爲我的div添加樣式。div backgroud-color在Firefox中不工作

所以,我試圖做這樣的

mydiv.Style.Add( 「背景色」, 「#a08b74」);

它完全在IE中工作。但不能在Firefox

工作有什麼問題

+0

你能否提供div的HTML代碼? – rahul 2009-08-05 11:50:02

回答

2

這個問題可能不是在所有的背景顏色不工作,但div標籤的大小是什麼你認爲它是不同的。

IE有一個渲染錯誤,導致它展開一個元素來包含子元素,甚至在應用中它不應該這樣做。如果在div中只有浮動元素,它們不應該影響div的大小,並且div的高度變爲零。

顯然,你看不到零高度的元素的背景顏色。

爲了使DIV得到它從浮動元素的高度,你可以把最後在div非浮動清算DIV:

<div class="Clear"></div> 

使用這種樣式:

.Clear { clear: both; height: 0; overflow: hidden; } 

(該溢出風格是這樣的IE不應用另一個類似的錯誤,使得清理div一個字符高,即使你指定的高度零。)

0

問題確實出現當所有包含的元素都浮動時,包含具有零高度的DIV元素。

除了插入結算的元素,你可以申請一個有點CSS的劈到包含div本身:

創建一個類,並應用到div:

.clearfix:after { 
    content: "."; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden; 
} 

這是再重複使用避免需要混淆你的標記。