2013-03-27 43 views
3

我一直在爲Modernizr測試尋找像attr()這樣的CSS函數,但我找不到任何東西。有沒有辦法測試這些功能?是否可以使用Modernizr檢測對attr()或url()等CSS3函數的支持?

+0

你的意思是CSS *選擇器*像'attr',而不是函數? – Spudley 2013-03-27 15:15:51

+0

對於它的價值,唯一沒有'attr'選擇器的瀏覽器今天可能會遇到IE6。即使IE7支持它。鑑於此,如果你想使用'attr',你完全可以根本不支持IE6。 – Spudley 2013-03-27 15:23:36

+0

要添加到Spudley的評論,這裏有一個鏈接到我最喜歡的網站之一,用CSS選擇器(和更多)兼容性表格:http://www.quirksmode.org/css/index.html。我意識到這與Modernizr無關,但可能有所幫助。此外,編寫自己的JavaScript測試attr選擇器應該不會太困難,這與您希望Modernizr執行的操作類似。 – Sean 2013-03-28 12:43:40

回答

1

CSS函數在使用上有很大差異,並且被視爲值而不是屬性或選擇器,所以沒有針對它們的通用Modernizr測試。然而,it does provide feature detection for some specific functions

  • RGBAHSLA色度值:Modernizr.rgbaModernizr.hsla

  • GradientsModernizr.cssgradients

  • TransformsModernizr.csstransforms用於2D變換和Modernizr.csstransforms3d爲3D變換

Modernizr不提供url()的功能檢測功能,因爲它已經存在並且每個瀏覽器都完全支持它。

它也沒有爲attr()提供特徵檢測,但對於它的價值,每一個做瀏覽器實現attr()(IE8 +等瀏覽器)只實現了它作爲CSS2.1定義。截至2013年,Values and Units level 3中定義的版本不存在實施。

注意CSS2.1 attr()僅與content屬性上:before:after僞元素,其Modernizr的確實提供特徵檢測爲在Modernizr.generatedcontent形式使用。

相關問題