2011-08-03 93 views
0

我剛剛發現,當我嘗試更改使用YUI作爲身體的background-color時,它不適用於FF5和Opera,但適用於IE和Chrome。但是,如果我爲background設置顏色值,則它在FF和Opera中都可以使用。我認爲background-color只是background的某種專業化。哪一個可以在所有瀏覽器中安全使用?有關代碼可以在這裏看到,background or background-color? Which one is safe to use?,我仍然有理解YUI如何處理事件的問題。我還在這裏修改了代碼頁http://www.kumarchetan.com/yui-module.html,嘗試使用IE,Chrome,FF和Opera訪問此頁面,並注意在不同瀏覽器中值變化的順利程度。背景或背景顏色?哪一個可以安全使用?

+0

請問您可以顯示一些代碼。背景色可以在FF5中正常工作 –

回答

1

解決您的問題,添加此CSS:

html, body { 
    margin: 0; 
    padding: 0; 
    height: 100% 
} 

htmlbody不佔用100%的高度,這是你需要處理mousemove事件是什麼。 background爲根元素is handled specially,但這與100%的高度不一樣。

原因瀏覽器之間的不一致的行爲可能與@ BoltClock的編輯做了,也可能是一個事實,即您的網頁使用Quirks Mode,因爲你沒有一個DOCTYPE做。添加此作爲第一行:

<!DOCTYPE html> 
+0

感謝一噸!我會用自己的飲料對待自己,也歡迎你:)但另一個問題爲什麼Chrome的行爲會有所不同...... – Kumar

+0

你可以交叉發佈解決方案到這個http://stackoverflow.com/questions/6922672/yui3-事件 - 不工作,在Firefox的 - 或 - 歌劇作品,精細的鉻,雖然?我也將結束這個問題 – Kumar

3

這是因爲YUI CSS reset設置html元素的background屬性,而不是body,所以如果你想指定不同的頁面背景顏色,這樣做對html。它與background-color和速記background之間的任何兼容性問題無關,因爲在所有瀏覽器中都完全支持這兩個屬性(CSS1版本)。

編輯:哦,你的意思是你使用YUI的JavaScript API ...在這種情況下,這是與DOM風格屬性的差異。事實上,您必須使用camelCase符號來實現跨瀏覽器兼容性(這不僅適用於YUI,而且適用於DOM)。 IE和Chrome恰好也支持連字符的屬性名稱。

+1

It Strikes Again! – thirtydot

+0

@ thirtydot:對不起,因爲你偷看了你的風頭;) – BoltClock

+0

@BoltClock,man我不使用css。它與YUI的普通舊香草HTML頁面。看看源代碼,你會明白。 – Kumar

0

除非您設置圖像和顏色,否則兩者之間沒有真正的區別。如果你只設置了一件事,那麼你可以使用background

0

它們都可以在所有瀏覽器中安全使用。

background可以設置它的所有子屬性,如background-color, background-image, background-position

因此,而不是設置

background-color: #fff; /* white */ 
background-image: url(path/to/image.png); 
background-repeat: repeat; /* or repeat-x, repeat-y, none */ 
background-position: top center; /* other options include bottom, right, left, along with pixel values and percentages*/ 
background-attachment: scroll; /* or fixed */ 

你可以寫 background: #fff url(path/to/image.png) top center fixed;

0

+1到BoltClock的答案,因爲這在這種情況下可能是正確的,但是我最近實際上遇到了與其他解決方案類似的情況,所以我認爲我會分享。

在我的情況,有問題的元素有一個漸變背景:

background: -moz-linear-gradient(top, #c2c2c2, #ffffff); 

設置background-color有這個因素沒有影響,因爲梯度優先於色。我不得不使用background來覆蓋它。