- 一种css预处理器,将css由描述语言转为编程语言,然后再编译成css。类似的还有less、stylus,less和sass很早前就已经开始使用了,stylus我后面再去学习比较(定个时间:2017.03底前花一天时间学习下)。
- 基于ruby编写。
- scss和sass两种后缀名的区别:.sass是不使用花括号和分号";"的, .scss可以使用,两者编译后的实现是相同的, 但是.scss进行css书写更合习惯。
安装和编译
1.环境上需要先安装ruby
// 安装sass, 然后就可以使用了
gem install sass
2.编译
- sass demo.scss demo2.css //指定文件名
- 可指定输出的css排版风格(我一般不设置,只用默认的nested,压缩的话用压缩工具就行了):
语法: sass --style expanded demo.scss demo2.css- nested:嵌套缩进的css代码,它是默认值。
- expanded:没有缩进的、扩展的css代码。
- compact:简洁格式的css代码。
- compressed:压缩后的css代码。线上使用。
- 每次改变sass文件都要编译是很烦的事情, 所有自动化是必不可少的。构建工具当然是最好的选择,后面我整理好了再引入介绍,先使用sass自带的监控语法:sass --watch demo.scss demo2.css ** , 最便利的当然是可以编译和输出指定文件夹内的css文件, sass --watch src/.scss dist/.css
记录一个工作中遇到的问题
问题描述:在scss文件中@import一个相对路径第三方的库如swiper的css资源, 引入scss后缀的文件没问题,但引入.css后缀的资源,sass会直接做一个http请求去下载,解决方法,将.css后缀去掉。且不能使用@import url()方式引入。待详细了解...
scss中引用node_modules文件中内容,如何引用
一开始我是这样引用的:
@import "slick-carousel/slick/slick.scss"; // slick-carousel是npm包
编译的时候报如下错误
说文件找不到,该何解,上google...找到差不多的问题,下面这老哥给了正解,当然提问的人是在路径前加了~号,关于这个符号可以看我这篇文章的介绍说明。反正人家的意思是,路径写成"node_modules/...",尝试之后编译正确!! image.png
网友评论