stylus之混合书写(Mixins)
混合書寫(Mixins)
Mixins:Mixins是預處器中的函數(shù)。平時你在寫樣式時某段CSS樣式要經(jīng)常重復性的用到多個元素中,這樣你就需要重復的寫多次。在CSS預處器中,你可以為這些公用的CSS樣式定義一個Mixin,然后在你CSS需要使用這些樣式的地方直接調(diào)用你定義好的Mixin。這是一個非常有用的特性。Mixins是一個公認的選擇器,還可以在Mixins中定義變量或者是默認參數(shù)
可以不使用任何符號,就是直接定義Mixins名,然后在定義參數(shù)和默認值之間用等號(=)來連接
轉(zhuǎn)譯后:
混入:
混入和函數(shù)定義方法一致,但是應用卻大相徑庭
例如下面有定義的border-radius(n)方法,其卻作為一個mixin(如,作為狀態(tài)調(diào)用,而非表達式)調(diào)用
當border-radius()選擇器中調(diào)用時候,屬性會被擴展并復制在選擇器中
編譯成
使用混入書寫,你可以完全忽略括號,提供夢幻般私有屬性的支持
注意這里我們在混合書寫中的border-radius當作了屬性用來給標簽添加CSS樣式,而并不是作為一個遞歸函數(shù)在調(diào)用
更進一步,我們可以利用arguments這個局部變量,傳遞可以包含多值的表達式
現(xiàn)在,我們可以像這樣子傳值:border-radius 1px 2px / 3px 4px!
另外一個很贊的應用是特定的私有前綴支持——例如IE瀏覽器的透明度
渲染為
父級引用:
混合書寫可以利用父級引用字符&, 繼承父業(yè)而不是自己筑巢
例如,我們要用stripe(even, odd)創(chuàng)建一個條紋表格。even和odd均提供了默認顏色值,每行也指定了background-color屬性。我們可以在tr嵌套中使用&來引用tr,以提供even顏色
然后,利用混合書寫,如下
另外,stripe()的定義無需父引用
混合書寫中的混合書寫:
自然,混合書寫也可以再利用其它的混合書寫進行組合,建立在它們自己的屬性和選擇器上
例如,下面我們創(chuàng)建內(nèi)聯(lián)comma-list()(通過inline-list())以及逗號分隔的無序列表
渲染
總結
以上是生活随笔為你收集整理的stylus之混合书写(Mixins)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: T-SQL :SQL Server 定义
- 下一篇: windows 查看ttf字体