stylus介绍

Stylus 是一个CSS的预处理框架,2010年产生,来自Node.js社区,主要用来给Node项目进行CSS预处理支持,所以 Stylus 是一种新型语言,可以创建健壮的、动态的、富有表现力的CSS。比较年轻,其本质上做的事情与 SASS/LESS 等类似,应该是有很多借鉴,所以近似脚本的方式去写CSS代码,它的文件扩展名是.styl”。

文档参考

官方stylus文档
张鑫旭中文翻译

Stylus基本应用

body
color white
==>
body {
color: #fff;
} textarea, input
border 1px solid #eee
==>
textarea,
input {
border: 1px solid #eee;
}

乍一看是不是觉得很奇怪,冒号、花括号、分号统统不见了。这就是stylus的神奇之处,你如果不习惯的话,Stylus也接受标准的CSS语法,同时也可以像Sass老的语法规则,使用缩进控制

body{
color white
}

或者

body{
color:white;
}

以上两者编译结果都为

body{
color:white;
}

stylus同样可以像sass、less等使用Mixins、Functions等

比如mixin

support-for-ie ?= true
opacity(n)
opacity n
if support-for-ie
filter unquote('progid:DXImageTransform.Microsoft.Alpha(Opacity=' + round(n * 100) + ')') #logo:hover
opacity 0.5

渲染结果为:

#logo:hover {
opacity: 0.5;
filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=50);
}

这里就不对其功能做一一介绍了,详情可以参照上面提供的官方文档

编译生成CSS

这里主要讲如何用sublime的插件生成,当然还有命令行、grunt等方式生成本文不做陈述了,想要了解的可以查看stylus入门使用或者参照其他例子
如果你使用sublime,你可以ctrl+shift+p调出控制台然后输入install package然后输入stylus然后回车安装,安装成功后在package settings你会看到如蓝色背景条所示

展开蓝色背景条,在setting-user里面进行配置即可

{
"envPATH": "", //环境的路径
"binDir": "", //项目路径
"compileOnSave": true, //是否编辑保存
"compileDir": true, //编译到指定目录
"compress": true, //是否压缩
"compilePaths": {"": ""} //输出路径
}

设置完成之后建立.styl文件,然后编辑保存,你就会在输出路径里面看到编译好的css文件了

结束语

1、现在CSS预处理器技术已经非常的成熟,已经有很多预处理框架Sass、Less CSS、Stylus还有Postcss,选择哪一种完全看个人喜好。
2、网上已经有很多关于stylus的教程,但是在处理编译这一块没有谈及直接用编辑器的插件处理的,至少我之前是没找到相关,也许是我搜索的不够全面。
3、文章有写的不对的地方可以留言指出本人将及时改正,毕竟自己的见解总是有限的,有兴趣的可以加入前端交流QQ群:519875573 进行讨论。

直接使用sublime编译stylus的更多相关文章

  1. 用sublime编译C++的方法

    sublime代码高亮这么好看,怎么能不用sublime敲代码呢: ) 本人用的版本是sublime Text3中文版 在网上查了查,自己的sublime现在也能编译C++了,设置步骤如下: 1.找到 ...

  2. 自从用了Less 编写css,你比以前更快了~(sublime编译)

    之所以用这个标题呢,主要是最近调侃杰伦太有意思了. 好吧,开个玩笑而已. 如果你了解过Less,并对之很熟悉,就不用往下看了. 如果你没用过,恭喜,这是一个入门级的教程,学会了它,可以为你节省10%的 ...

  3. sublime编译javaScript脚本

    处理步骤: 1. 首先到 nodejs.org 下载 Node.js 安装包并安装.2. 打开 Sublime Text 3 编辑器.选择菜单 Tools --> Build System -- ...

  4. sublime 编译C++

    http://www.yalewoo.com/sublime_text_3_gcc.html 这篇博客很强 完美解决在sublime里写C++无法输入的问题 sublime text 3配置c/c++ ...

  5. Mac sublime 编译Python UnicodeEncodeError: 'ascii' codec can't encode characters in position 6-8: ordinal not in range(128)

    刚学Python,想打印个“hello 张林峰”,代码如下: #!/usr/bin/env python3 # -*- coding: utf-8 -*- print('hello 张林峰') 用su ...

  6. sublime 编译运行C程序

    { "cmd": ["gcc", "${file}", "-o","${file_path}/${file_b ...

  7. Sublime 编译出来的是 dos格式,不是unix格式

    在windows下编辑一般都这样的 :set ff=unix就好

  8. Sublime 编译运行JavaScript

    Tools > Build System > New Build System... { "cmd": ["node", "$file&q ...

  9. windows 10 下sublime text 3配置c/c++编译环境

    来源于在网上各种帖子,自己成功配置之后写作笔记: 检查环境变量 首先配置重定义环境变量,过程如下: 创建一个test.c文件 内容: #include <stdio.h> int main ...

随机推荐

  1. c/c++中sort函数用法

    转载自博主:九江镇中https://www.cnblogs.com/jjzzx/ c++标准库里的排序函数的使用方法 I)Sort函数包含在头文件为#include<algorithm>的 ...

  2. (第二章第四部分)TensorFlow框架之TFRecords数据的存储与读取

    系列博客链接: (第二章第一部分)TensorFlow框架之文件读取流程:https://www.cnblogs.com/kongweisi/p/11050302.html (第二章第二部分)Tens ...

  3. Bugku CTF_web5

    1.打开网页,得到信息如下 2.打开hackbar,在body里传入post参数. 3.得到flag如下 4.主要考察以下几点: ->php无论是通过get请求还是post请求得到的数据都是字符 ...

  4. keepass实践

    参考软件教程 篇一:从入门到熟练:KeePass全网最详使用指南 运行之后快到来不及截图,就是这么速

  5. 基于idea做java程序的本地k8s调试-skaffold(二)

    上一篇讲完了java代码发到本机minikube中run,这篇来讲讲minkube中进行debug(idea下) 话说,上篇是把pigx基础infra微服务都发到了minikube中,这些微服务是ru ...

  6. laravel7 h-ui点改

    html: <td> @if($item->fang_status == 0) <span onclick="changeFangStatus(this,{{$ite ...

  7. 还不会用springboot写接口?快看这里,手把手操作,一发入魂~

    1.springboot简介 Spring Boot 可以轻松创建可以"直接运行"的独立的.生产级的基于 Spring 的应用程序. 特征 创建独立的 Spring 应用程序 直接 ...

  8. 《Shader入门精要》第11章-11.3.1流动的河流中的offset.x的解释

    在我学习入门精要的时候,经常遇到不解释api,甚至是关键代码的实现原理. 11.3.1流动的河流中的offset.x的sin函数查了一下好像大家也都是书上原话直接复制,现在好不容易想明白了希望能帮到和 ...

  9. 1.1 STL基本概念

    文章目录 1 STL概述 1.1 STL基本概念 1.2 STL 六大组件 1.3 STL优点 2.1 容器 2.2 算法 2.3 迭代器 2.4 示例 1 STL概述 STL是StandardTem ...

  10. 深度学习(一)之MNIST数据集分类

    任务目标 对MNIST手写数字数据集进行训练和评估,最终使得模型能够在测试集上达到\(98\%\)的正确率.(最终本文达到了\(99.36\%\)) 使用的库的版本: python:3.8.12 py ...