为什么使用Sass
作为前端(html、javascript、css)的三大马车之一的css,一直以静态语言存在,HTML5火遍大江南北了、javascript由于NODE.JS而成为目前前后端统一开发语言的不二之选。只有css似乎成为前端开发的被忽视的角色了。

Sass让css有了动态语言的特点,在初次学习css时,有时候同样的样式在不同的#或.中一次又一次重复的编码,有了Sass,在css语法的基础上不仅可以写变量、函数,而且可以百分百的转换为标准的css。再次把Don‘t Repeat Yourself进行到底,降低了“码农”的工作量,提高了效率。而且现在越来越多的优秀开发人员专门利用sass和compass构建出非常优秀的前端样式开发框架(如,Button),再一次提高我们的生产力。

安装Sass

Sass依赖于Ruby,需先安装Ruby

安装过程中注意勾选上第二项!即将Ruby加入到可执行的环境变量中去。

运行 ruby -v 能看到对应的版本则说明安装正确。

默认的源有可能被墙, 可以切换淘宝的源
使用命令行安装sass:

使用命令,查看是否安装成功,如下显示表示安装成功:




简单使用Sass

在sass文件夹下创建demo1.scss文件,内容:
$myColor: #ccc;

#page {
color: $myColor;
}
使用命令编译SCSS文件:
sass demo1.scss demo1.css

得到编译后的css文件

内容
#page {
color: #ccc; }

/*# sourceMappingURL=demo1.css.map */

提高生产力的Sass

如下,在学习sass之前我们大概都是这么来写css的:

ul.nav {float: right}
ul.nav li {float: left;}
ul.nav li a {color: #111}
ul.nav li.current {font-weight: bold;}
但,有了sass后,那就方便多了:
ul.nav{
float:right;
li{
float:left;
a{
color:#111;
}
&.current{
font-weight:bold;
}
}
}
&的作用  &.current = li.current   .current = li .current 

每次手动执行命令很麻烦. 接下来使用Nodejs和Grunt来实现SASS的自动编译。

先来看看Grunt是什么? Grunt 是一个应用程序构建、任务管理工具。它可以实现生产自动化,避免大理繁琐单调重复的工作。目的就是为了自动化,减少你重复做的工作。当你配置好了一个Grunt任务管理之后,它可以帮你减少很多重复性工作,按照配置使用并减少出错可能。

安装grunt命令行界面(CLI)

在安装grunt.js之前,需要先安装Grunt的命令行界面。安装方法也很简单,打开你的命令终端,在命令行中,输入:

如果正确的执行了命令, 会如下图所示

漫长的等待

安装成功
如果你要卸载grunt的话,可以在你的终端直接输入:npm uninstall grunt -g

接下来在WebStorm中启用Grunt

打开项目中的scss文件
点击右上角的提示 Add Watcher

在弹出的设置页面中选择Program项目后的浏览按钮, 选择ruby安装目录下\bin\sass.bat文件



此页面可以修改Sass编译时的参数, 及生成的css文件的目录.
如想再次修改, 在设置-->工具集-->File Watcher-->SCSS 点击后面的铅笔即可显示设置页面




现在尝试修改lib/ionic/scss 目录下的scss文件, 将会自动在 lib/ionic/css文件中生成相应的css文件,最后, 别忘了在html页面里引用ionic.css文件



在项目目录下运行 npm install  会把所需要的所有npm包下载到项目目录
 
注意点
1.项目路径里不能有除英文以外的字符.如中文,韩文
2.FileWatch默认的生成目录是www/lib/ionic/scss. 并不是 www/lib/ionic/css . 如要生成到其他目录需在FileWatch中配置
--no-cache  --update $FileName$:$ProjectFileDir$\www\css\$FileNameWithoutExtension$.css
红色部分为输出目录及文件


--no-cache --trace --update $FileName$:$FileNameWithoutExtension$.css
加入 --trace命令, 显示 生成跟踪事件




SASS 入门的更多相关文章

  1. CSS进阶之SASS入门指南

    CSS进阶之SASS入门指南         随着跟着公司学习项目的前端的推进,越来越对好奇了许久的SASS垂涎欲滴,哈哈,可能这个词使用不当,没有关系,就是对SASS有一股神秘的爱!好了,闲话不多说 ...

  2. sass入门(一)

    一].sass入门安装sass安装koala // sass中可以自定义变量 $fontStack: Microsoft Yahei; $primaryColor: #333; body { font ...

  3. Sass入门指南

    转自:http://www.imooc.com/article/1413 css预处理器已经算不上一个新鲜的词了,当前比较有代表性的css预处理器有sass.less.stylus.关于三者选择问题一 ...

  4. 09-移动端开发教程-Sass入门

    1. 引言 CSS3之前的CSS都大都是枚举属性样式,而编程语言强大的变量.函数.循环.分支等功能基本都不能在CSS中使用,让CSS的编程黯淡无光,Sass就是一种增强CSS编程的扩展语言(CSS4也 ...

  5. Sass入门及知识点整理

    Sass 快速入门 | SASS 中文网 文档链接:https://www.sasscss.com/getting-started/ 前言 之前整理了一篇关于Less的,现在就来整理一下关于Sass的 ...

  6. SASS 入门笔记

    参考资料: SASS 用法指南 SASS 语法 Sass Basics SASS_REFERENCE sass 有两种后缀名文件:一种后缀名为 sass,不使用大括号和分号:另一种就是我们这里使用的 ...

  7. sass入门

    SASS是一种CSS的开发工具,提供了许多便利的写法,大大节省了设计者的时间,使得CSS的开发,变得简单和可维护. SASS 官网介绍: sass is the most mature(成熟的),st ...

  8. sass入门教程

    一.什么是SASS SASS是一种CSS的开发工具,提供了许多便利的写法,大大节省了设计者的时间,使得CSS的开发,变得简单和可维护. 二.安装和使用 2.1 安装 SASS是Ruby语言写的,必须先 ...

  9. sass 入门教程

    1.引言 众所周知css并不能算是一们真正意义上的“编程”语言,它本身无法未完成像其它编程语言一样的嵌套.继承.设置变量等工作.为了解决css的不足,开发者们想到了编写一种对css进行预处理的“中间语 ...

  10. Sass入门——基本特性-基础

    本文来自慕课网大漠 声明变量 三个部分:1.声明变量的符号"$"2.变量名称3.赋予变量的值 $brand-primary : darken(#428bca, 6.5%) !def ...

随机推荐

  1. 手淘适配-flexible

    目标 拿一个双11的Mobile页面来做案例,比如你实现一个类似下图的一个H5页面: 目标很清晰,就是做一个这样的H5页面. 痛点 虽然H5的页面与PC的Web页面相比简单了不少,但让我们头痛的事情是 ...

  2. Linux 线程占用CPU过高定位分析

    今天朋友问我一个Linux程序CPU占用涨停了,该如何分析, CPU占用过高,模拟CPU占用过高的情况 先上一段代码: #include <iostream> #include <t ...

  3. mapreduce基本原理

    场景: 一个大小为100T的文件,统计单词"ERROR"和"INFO"的个数 普通做法 是不是效率太低了? 换个方式 说明: 把100T文件分成100份,一台机 ...

  4. 【Java并发编程】:死锁

    当线程需要同时持有多个锁时,有可能产生死锁.考虑如下情形: 线程A当前持有互斥所锁lock1,线程B当前持有互斥锁lock2.接下来,当线程A仍然持有lock1时,它试图获取lock2,因为线程B正持 ...

  5. Android 开发工具类 25_getJSON

    获取 JSON 数据并解析 import java.io.InputStream; import java.net.HttpURLConnection; import java.net.URL; im ...

  6. jdk1.6 改 jdk1.7或jdk1.8(改回也可以)(图文详解)

    不多说,直接上干货!  第一步:设置默认使用的JDK和JRE环境 具体步骤:菜单window->preferences->java->Installed JRES 点中了,右边的窗口 ...

  7. 软件魔方制作系统启动盘并安装win7系统

    不多说,直接上干货! 推荐软件:软件魔方 http://mofang.ruanmei.com/ 这里,我想说的是,这个软件来制作系统盘,是真的方便和好处多多.具体我不多说,本人也是用过其他的如大白菜等 ...

  8. OpenGL11-绘制汉字最高效方法(使用Freetype)(代码已更新)

    最新版本,之前的版本有些文件没有打包 视频教程请关注 http://edu.csdn.net/lecturer/lecturer_detail?lecturer_id=440 OpenGL本身并没有绘 ...

  9. 两个字符串 char* a, char* b,输出b在a中的位置次序。

    /** 题目: 两个字符串 char* a, char* b,输出b在a中的位置次序. void output_postion(const char* a, const char* b); 如:a = ...

  10. APS审核经验+审核资料汇总——计算机科学与技术专业上海德语审核

    1.APS是什么 德国驻华使馆文化处留德人员审核部(简称APS)成立于2001年7月,是由德国驻华使馆文化处和德意志学术交流中心(DAAD)在北京共同合作成立的服务机构. APS是中国学生前往德国留学 ...