CSS的预处理框架stylus学习教程
前端 / 管理员 发布于 7年前 288
stylus介绍
是个什么鬼?对于开发来说,CSS的弱点在于静态化。我们需要一个真正能提高开发效率的工具,LESS, SASS都在这方面做了一些贡献。
Stylus 是一个CSS的预处理框架,2010年产生,来自Node.js社区,主要用来给Node项目进行CSS预处理支持,所以 Stylus 是一种新型语言,可以创建健壮的、动态的、富有表现力的CSS。比较年轻,其本质上做的事情与 SASS/LESS 等类似,应该是有很多借鉴,所以近似脚本的方式去写CSS代码。
Stylus默认使用 .styl 的作为文件扩展名,支持多样性的CSS语法。
Stylus功能上更为强壮,和js联系更加紧密。所以我选择 Stylus,SASS 玩儿过一段时间,主要是这玩意依赖ruby运行,所以我放弃使用了。
Stylus安装
全局安装,安装之前你需要你安装 nodejs 这个怎么安装搜去哦。
复制代码代码如下:$ npm install stylus -g
这样就算是安装完Stylus了,也可以正常使用Stylus。
复制代码代码如下:Usage: stylus [options] [command] [< in [> out]]
[file|dir ...]
Commands:
help <prop> Opens help info for <prop> in
your default browser. (OS X only)
Options:</p><p> -u, --use <path> Utilize the stylus plugin at <path>
-i, --interactive Start interactive REPL
-w, --watch Watch file(s) for changes and re-compile
-o, --out <dir> Output to <dir> when passing files
-C, --css <src> [dest] Convert CSS input to Stylus
-I, --include <path> Add <path> to lookup paths
-c, --compress Compress CSS output
-d, --compare Display input along with output
-f, --firebug Emits debug infos in the generated css that
can be used by the FireStylus Firebug plugin
-l, --line-numbers Emits comments in the generated CSS
indicating the corresponding Stylus line
-V, --version Display the version of Stylus
-h, --help Display help information
生成CSS
命令行中
建立一个stylusExample/,再在里面建立 src 目录专门存放 stylus 文件,在里面建立 example.styl 文件。然后在 stylusExample 目录下面执行下面命令
复制代码代码如下:$ stylus --compress src/
输出compiled src/example.css ,这个时候表示你生成成功了,带上--compress参数表示你生成压缩的CSS文件。
$ stylus --css css/example.css css/out.styl CSS转换成styl
$ stylus help box-shadow CSS属性的帮助
$ stylus --css test.css 输出基本名一致的.styl文件
grunt生成
grunt生成 就比较爽歪歪了,具体grunt怎么玩儿,俺写了个教程Grunt教程-前端自动化 可以学习以下。
stylusExample 目录下创建两个文件,这两个文件是grunt必备文件。
package.json:用于保存项目元数据。
Gruntfile.js:用于配置或定义任务、加载 Grunt 插件。
package.json 内容
JavaScript Code复制内容到剪贴板然后安装必备插件,这些插件让stylus文件变更了自动生成,生成到相对应的文件目录中。如果报错你需要在命令行前面加上sudo,给它最大的执行权限。
npm install grunt --save-dev
npm install grunt-contrib-watch --save-dev :监视文件变动,做出相应动作。npm>>
npm install grunt-contrib-stylus --save-dev :stylus编写styl输出css npm>>
安装出现这样的警告 npm WARN package.json test@1.0.0 No README data 可以不理会,如果你看着不舒服,你需要在stylusExample目录下面建立一个 README.md 文件并输入内容。也可命令执行 echo "#stylus 学习" >> README.md
插件执行完毕之后 package.json 文件变成了这样样子滴。
JavaScript Code复制内容到剪贴板这个时候你需要使用这些插件儿完成你的任务需要在Gruntfile.js里面写你的执行任务。
注意读懂上面的哦,目录高对哦,这些没有必要提醒哦,这个时候你可以好好耍一下stylus
Stylus应用
这个时候真正的开始玩耍了哦。
Try Stylus!
stylus
CSS Code复制内容到剪贴板编译成
CSS Code复制内容到剪贴板stylus : 强大的功能丰富的语言
CSS Code复制内容到剪贴板编译成
CSS Code复制内容到剪贴板nibStylus插件
stylus
CSS Code复制内容到剪贴板编译成
CSS Code复制内容到剪贴板Nesting(嵌套)
stylus
CSS Code复制内容到剪贴板编译成
header #logo {
border: 1px solid #f00;
}
Flexible syntax(灵活的用法)
stylus
CSS Code复制内容到剪贴板编译成
CSS Code复制内容到剪贴板Flexible &(灵活&)
stylus
CSS Code复制内容到剪贴板编译成
CSS Code复制内容到剪贴板Functions 方法
返回值
stylus
CSS Code复制内容到剪贴板编译成
CSS Code复制内容到剪贴板Transparent mixins
不带参数
stylus
CSS Code复制内容到剪贴板编译成
CSS Code复制内容到剪贴板默认参数
不带参数
stylus
CSS Code复制内容到剪贴板函数体
通过内置unit()把单位都变成px, 因为赋值在每个参数上,因此,我们可以无视单位换算。
CSS Code复制内容到剪贴板多个返回值
通过内置unit()把单位都变成px, 因为赋值在每个参数上,因此,我们可以无视单位换算。
CSS Code复制内容到剪贴板122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号