stylus之条件(Conditionals)
條件(Conditionals)
條件:
條件提供了語言的流控制,否則就是純粹的靜態(tài)語言。提供的條件有導(dǎo)入、混入、函數(shù)以及更多。下面的例子純粹示例,并不是使用建議
if / else if / else
這沒什么好說的,跟一般的語言一致,if表達(dá)式滿足(true)的時候執(zhí)行后面語句塊,否則,繼續(xù)后面的else if或else
下面這個例子,根據(jù)overload的條件,決定是使用padding還是margin
如果”overload-padding”為true的情況,則padding將顯示而margin將被干掉。反之則padding將被干掉,而margin將被顯示
另外的例子
根據(jù)傳入的第三個參數(shù)為true或者false,來決定是否設(shè)置body的margin
另外的box()幫手
除非(unless):
熟悉Ruby程序語言的用戶應(yīng)該都知道unless條件,其基本上與if相反,本質(zhì)上是(!(expr))
下面這個例子中,如果disable-padding-override是undefined或false, padding將被干掉,顯示margin代替之。但是,如果是true, padding將會如期繼續(xù)輸出padding 5px 10px
后綴條件:
Stylus支持后綴條件,這就意味著if和unless可以當(dāng)作操作符;當(dāng)右邊表達(dá)式為真的時候執(zhí)行左邊的操作對象
例如,我們定義negative()來執(zhí)行一些基本的檢查。下面我們使用塊式條件
接下來,我們利用后綴條件讓我們的方法簡潔
當(dāng)右邊的表達(dá)式判斷n是一個”unit”或小于0的時候才返回左邊的”error”或”yes”或”no”
當(dāng)然,我們可以更進(jìn)一步。如這個n < 0 ? yes : no可以用布爾代替:n < 0
后綴條件適用于大多數(shù)的單行語句。如,@import, @charset, 混合書寫等。當(dāng)然,下面所示的屬性也是可以的
生成為
先設(shè)置body中的margin為默認(rèn)的5px,然后再設(shè)置body的padding為傳入的10px
總結(jié)
以上是生活随笔為你收集整理的stylus之条件(Conditionals)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 游戏策划入门(6)——把模块变成现实
- 下一篇: MYSQL关于日期统计常用的SQL语句