stylus教程1

less/sass/stylus俨然已经成为现在最常用的3种动态CSS语言,从这篇文章开始,我将详细的介绍stylus

stylus简介

stylus借鉴了sass的一些思想,变量/混合/函数/继承/扩展/插值等等特性在stylus里都有,但是在写法上,stylus追求极致的简单,花括号/冒号/分号以及一些逗号统统都可以省略,变量也不需要像less一样以@开头,或者向sass一样以$开头,看起来就像普通的字符串一样,甚至于调用混合时的参数的小括号也可以省略。这样的特性之下,使得stylus的结构看起来更加清晰。

border-radius()
  -webkit-border-radius arguments
  -moz-border-radius arguments
  border-radius arguments
  
body
  font 12px Helvetica, Arial, sans-serif
  
a.button
  border-radius 5px

//编译后:
border-radius() {
  -webkit-border-radius: arguments;
  -moz-border-radius: arguments;
  border-radius: arguments;
}
body {
  font: 12px Helvetica, Arial, sans-serif;
}
a.button {
  border-radius: 5px;
}

stylus支持现代编程语言的函数

sum(nums...)
  sum = 0
  sum += n for n in nums
  
sum(1,2,3,4)
// => 10

这是什么概念?这意味着写CSS已经和真正的编程越来越接近,stylus可以变得非常强大!

字符串插值。在stylus中,字符串插值不需要特殊的写法:

fonts = helvetica, arial, sans-serif

body {
  padding: 50px;
  font: 14px/1.4 fonts;
}

//编译后:
body {
  padding: 50px;
  font: 14px/1.4 helvetica, arial, sans-serif;
}

你只需要简单的将变量放到你想放到的位置就行了。而在less和sass中,你却不得不将变量包裹在@{}或者#{}中,而且,stylus还支持更加强大的选择器插值和属性插值,有关插值的具体内容会在随后的文章中介绍。

stylus使用node编写,要使用stylus,只需要在terminal中运行:

npm install stylus

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容