2013-12-19 20 views
2

當我在我的.less文件中編寫[if ! webkit]它拋出一個錯誤,因爲它無法將其轉換爲css代碼。如何檢測[if! webkit]通過媒體查詢

也有在我的代碼,所以我寫了

@media all and (-webkit-min-device-pixel-ratio:1) { 
    html, body { 
     background-color: black; 
    } 
} 

,而不是一個[if webkit]

html, body { 
    [if webkit]background-color:black; 
} 

而且它正常工作,所以我需要爲[if ! webkit]

類似的解決方案

任何人都可以幫助我嗎?

+3

在媒體查詢中使用「not」?請參閱:http://stackoverflow.com/questions/5766069/exact-notinverse-of-css-media-query和http://css-tricks.com/logic-in-media-queries/。在你的情況:'@media不是全部和(-webkit-min-device-pixel-ratio:1)' –

+0

@BassJobsen,已經試過了!但沒有工作,我測試了它在Firefox –

+0

我發現你的問題在這裏重複:http://stackoverflow.com/questions/15401375/css-media-check-if-not-webkit。也許'-webkit-min-device-pixel-ratio'對於Firefox來說不是一個很好的鑑別器,也可以查看https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Media_queries,「 - moz-device-pixel-ratio「部分 –

回答

0

您示例中的媒體查詢是供應商特定的媒體查詢。它只會被webkit瀏覽器識別,因爲它們是唯一使用此前綴的人。當firefox看到這個代碼時,它不會識別它,所以它被忽略。沒有「不是webkit」的代碼,因爲其他瀏覽器不使用這些前綴。其他商販可以提供自己的版本 (即分鐘 - MOZ設備像素比)

https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Media_queries#-moz-device-pixel-ratio

但如果他們沒有自己的你是SOL。我總是建議使用

http://rafael.adm.br/css_browser_selector/

作爲瀏覽器特定問題的快速修復。