sass的安装和基础语法
安装
- 下载ruby安装包【官网非常慢ruby官网】
- 下载sass
方法一:
ruby压缩包,解压即可,在bin目录下,使用命令gem install sass-3.7.4.gem安装sass
方法二:
gem install sass
在idea中使用
- 安装
File watcher
插件 - add SCSS监听器
programm: ruby/bin/scss.bat
# --no-cache:不生成缓存文件,--sourcemap=none:不生成map文件, -t expanded输出样式
arguments:--no-cache -t expanded --sourcemap --sourcemap=none $FileName$:$FileNameWithoutExtension$.css
output path to refresh:$FileNameWithoutExtension$.css
常见问题
- 中文注释报错
在scss文件开头,写入@charset "utf-8"
sass语法
sass脚本
- 变量
$text-color: red; // -和_一样
p{
color: $text-color;
}
- 数据类型
序号 | 数据类型和描述 | 例子 |
---|---|---|
1 | Numbers 它表示整数类型。 | 2,10.5 |
2 | Strings 它是在单引号或双引号内定义的字符序列。 | 'Tutorialspoint', "Tutorialspoint" |
3 | Colors 它用于定义颜色值。 | red, #008000, rgb(25,255,204) |
4 | Booleans 它返回true或false布尔类型。 | 10 > 9 specifies true |
5 | Nulls 它指定空值,这是未知数据。 | if(val==null) {//statements} |
6 | Space and Comma 表示由空格或逗号分隔的值。 | 1px solid #eeeeee,0 0 0 1px |
7 | Mapping 它从一个值映射到另一个值。 | FirsyKey:frstvalue,SecondKey:secvalue |
- 运算符
- 数字运算符
$a-width:10px;
a{
width: $a-width - 5; // 注意运算符前后必须有空格
}
- 颜色运算符
$color1: #333399;
$color2: #CC3399;
p{
color: $color1 + $color2; // #ff66ff;
}
- 字符串运算符
p {
font-size: 5px + 10px; // 15px
}
- 布尔运算符
$age:20;
.bool {
@if ($age > 10 and $age < 25) {
color: green;
}
}
- sass括号
p {
font-size: 5px + (6px * 2); // 17px
color:#ff0000;
}
- sass函数
p {
color: hsl($hue: 0, $saturation: 50%, $lightness: 50%);
}
- 插值
p:after {
content: "I have #{8 + 2} books on SASS!";
}
- &SassScript
p{
&:hover{}
}
- 默认值
您可以通过向变量值的结尾添加!default 标志来设置变量的默认值。如果值已经分配给变量,则不会重新分配该值。
$myval1: null;
$myval1: "Sass Developed by Natalie Weizenbaum and Chris Eppstein" !default;
p:after {
content: $myval1;
}
Sass @-规则和指令
- @import
导sass、scss或者css,scss可以胜利后缀名。
部分是SASS或SCSS文件,它们使用下划线在名称(_partials.scss)开头写入 , 可以在SASS文件中导入部分文件名,而不使用下划线
嵌套@import
e.g.
// _test1.scss
.container
{
background: #ffff;
}
// demo.scss
h4 {
@import "test1";
}
//out
h4 .container {
background: #ffff;
}
- @media
.style{
width: 900px;
@media screen and (orientation: portrait){
width:500px;
margin-left: 120px;
}
}
// out
.style {
width: 900px;
}
@media screen and (orientation: portrait) {
.style {
width: 500px;
margin-left: 120px;
}
}
sass控制指令和表达式
- if
h2{
color: if( 1 + 1 == 2 , green , red); // green
}
- @if
p{
@if 10 + 10 == 20 { border: 1px dotted; }
@if 7 < 2 { border: 2px solid; }
@if null { border: 3px double; }
}
@if expression {
// CSS codes
} @else if condition {
// CSS codes
} @else {
// CSS codes
}
- @for
- from through
@for $i from 1 through 4 {
.p#{$i} { padding-left : $i * 10px; }
}
// .p1,.p2,.p3,.p4
- from to
@for $i from 1 through 4 {
.p#{$i} { padding-left : $i * 10px; }
}
// .p1,.p2,.p3
- @each
@each $var in <list or map>
@each $color in red, green, yellow, blue {
.p_#{$color} {
background-color: #{$color};
}
}
//out
.p_red {
background-color: red; }
.p_green {
background-color: green; }
.p_yellow {
background-color: yellow; }
.p_blue {
background-color: blue; }
- 多个值
@each $color, $border in (aqua, dotted),
(red, solid),
(green, double){
.#{$color} {
background-color : $color;
border: $border;
}
}
- 多个分配与映射
@each $header, $color in (h1: red, h2: green, h3: blue) {
#{$header} {
color: $color;
}
}
// out
h1{color:red}
- @while
$i: 50;
@while $i > 0 {
.paddding-#{$i} { padding-left: 1px * $i; }
$i: $i - 10;
}
// out
.padding-50{
padding-left: 50px;
}..
函数指令
$first-width: 5px;
$second-width: 5px;
@function adjust_width($n) {
@return $n * $first-width + ($n - 1) * $second-width;
}
#set_width { padding-left: adjust_width(10); }
sass的安装和基础语法的更多相关文章
- Sass的使用和基础语法
sass安装 官网下载ruby的windows安装包,安装时勾选上添加到环境变量add ruby executables to your path.安装完成后打开命令行,ruby -v输出内容则安装完 ...
- jQuery安装和基础语法
1.安装 从 jquery.com 下载 jQuery 库 <script src="jquery-1.10.2.min.js"></script> 从 C ...
- Nginx详解二十二:Nginx深度学习篇之Lua解释器安装及基础语法
解释器 Lua:Lua是一个简洁.轻量.可扩展的脚本语言 Nginx+Lua优势充分的结合Nginx的并发处理epoll优势的Lua的轻量实现简单的功能切高并发的场景 安装Lua 1.安装解释器:yu ...
- 第2天 第一个程序&IDEA安装&Java基础语法
第一个程序 Hello,World! 随便新建一个文件夹,存放代码 新建一个Java文件 文件后缀名为java Hello.java [注意点]系统可能没有显示后缀名,必须手动打开 编写代码 publ ...
- Python环境安装与基础语法(2)——数据类型、标识符、语言分类
高级语言发展 结构化语言:以顺序(步骤化),分支,循环描述问题 面向对象语言:接近人类的认知,万物抽象成对象,对象间的关系抽象成类和继承 程序=数据结果+算法 Python解释器 CPython:由C ...
- sass的安装与基础
安装教程:http://www.haorooms.com/post/sass_css 手册:http://sass.bootcss.com/docs/guide/ http://www.w3c ...
- Python环境安装与基础语法(1)——计算机基础知识
Python安装 pip #包管理工具 pip install #安装包 pip list #查看包 IPython #增强的python shell,自动补全,自动缩进,支持shell,增加了很多函 ...
- Python环境安装与基础语法(4)——内存管理、if分支
Python内存管理 python中有自动清理内存垃圾的功能,当变量的引用计数为0,则可以被有计划的垃圾回收GC 常量会在系统中被多次引用,所以常量的引用计数无法确定 程序控制 顺序:按照先后顺序逐条 ...
- Python环境安装与基础语法(3)——进制、运算符和优先级、原码、补码
进制 转十进制:基本运算方法(权算方式) 0b1111——>1*2**3 + 1*2**2 + 1*2**1 + 1*2**0 0x7F——>7*16**1 + F*16**0 转二进制: ...
随机推荐
- windows 批量杀进程 类似pkill
轉:http://blog.sina.com.cn/s/blog_55fb522f0100whki.html 1.开始-运行(或win+R),输入cmd,打开命令行模式: 2.输入tasklist,可 ...
- luogu P2754 [CTSC1999]家园
本题是分层图最大流问题,相当于按时间拆点,每个当前点向下一点的下一时间层连点,每一层有n+1个点 #include<bits/stdc++.h> using namespace std; ...
- IOS 错误原因
当xcode提示以下错误时,很可能的原因是由于ViewController中的View在Controller中连接了outlet,然后又删除了Controller中对应的属性,导致xcode找不到这个 ...
- Element-UI中关于table表格的样式操作
项目中使用到element-ui组件库,经常需要操作表格,编辑样式的过程中遇到一些问题,官网针对table给出了很多的api,自己可以自定义,基本能满足产品需求,但是没有给出具体的案例,网上的资料也比 ...
- 吴裕雄 Bootstrap 前端框架开发——Bootstrap 表格:边框表格
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- mybatis注解基础使用
一.创建Maven项目 代码:pom.xml <?xml version="1.0" encoding="UTF-8"?> <projec ...
- ch5 创建类似按钮的链接
锚是行内元素,所以只有在单击链接的内容时它们才会激活,如果可以实现为按钮的效果,就可以有更大的可单击区域,实现方法为:display设置为block,修改width.height和其他属性,代码如下: ...
- mysql分区介绍
http://www.cnblogs.com/chenmh/p/5644713.html 介绍 可以针对分区表的每个分区指定各自的存储路径,对于innodb存储引擎的表只能指定数据路径,因为数据和索引 ...
- mysql any和all的用法
1.ANY关键字假设any内部的查询语句返回的结果个数是三个,如:result1,result2,result3,那么, select ...from ... where a > any(. ...
- YUV图解 (YUV444, YUV422, YUV420, YV12, NV12, NV21)
背景: 最近在研究音视频,了解YUV这样的格式对于音视频开发比较重要. 虽然这篇文章大部分是转载别人的,但是经过了校对以后,重新排版并补充了一部分内容 概览: 之所以提出yuv格式的原因,是为了解 ...