SASS常用语法
原文地址:这里
@charset "UTF-8"; /**
* 自定义变量
*/
$blue: #1875e7;
div {
color: $blue;
} /**
* 变量要嵌在字符串中间
*/
$side: left;
.rounded{
border-#{$side}-radius: 5px;
} /**
* 计算
*/
$unit: .05rem; .box{
height: $unit / 2;
width: 10 * $unit;
} /**
* 标签嵌套
*/
.parent{
background: #fff;
.child{
font-size: 12px;
}
} /**
* 属性嵌套
*/
p{
border: {
color: red;
width: 1px;
}
} /**
* 伪类
*/
a{
&:hover {
color: red;
}
} /**
* 注释
*
* // 单行注释编译后删除
* ** 多行注释编译后保留
*/ /**
* 继承
*/
.class1{
border: 1px solid #ddd;
}
.class2{
@extend .class1;
font-size: 12px;
}
.class3{
@extend .class1;
border-color: red;
} /**
* mixin 复用代码块
* 如果不需要传参数,可以不带括号
*/
@mixin left{
float: left;
margin-left: 10px;
}
.someclass{
@include left;
} /**
* mixin 可以指定参数和缺省值,就像函数了
*/
@mixin left($value: 10px){
float: left;
margin-left: $value;
}
.someclass2{
@include left(20px);
} /**
* 颜色函数
*/
.color1{
color: lighten(#cc3, 10%);
/**
* 浅 10%
* #d6d65c
*/
}
.color2{
color: darken(#cc3, 10%);
/**
* 深 10%
* #a3a329
*/
}
.color3{
color: grayscale(#cc3);
/**
* 将颜色转化为灰度
* #808080
*
* 怎么计算的?
* (cc + 33) / 2 = 80
*/
background: grayscale(#c03);
/**
* 这个算出来是 #666666
* 那就是。。
* (cc + 00) / 2 = 66
*/
border-color: grayscale(#c30);
/**
* 那来看看这个,会有区别吗?
* #666666
*/
background-color: grayscale(#03c);
/**
* #666666
* 好吧。。
*
* 查了文档,等同于 desaturate($color, 100%),将色彩饱和度调至0
* #cc3 -> hsl(60, 60%, 50%);
* #c03 -> hsl(345, 100%, 40%);
* #c30 -> hsl(15, 100%, 40%);
* #03c -> hsl(225, 100%, 40%);
*
* H(色上) S(饱和度) L(明度)
* S 为 0 时,RGB 都为 L
* 256 * 50% = 128 -> 80
* 256 * 40% = 102 -> 66
*/
}
.color4{
color: complement(#cc3);
/**
* 反象
* #33c
*/
} /**
* 插入文件
* 注:会插到本文件头部
*/
@import "reset.css"; /**
* 再试一下,如果出现两个相同的选择器,会合并到一起吗?
* 不会合并,定义几处,翻译后还是几处
*/
div{
background: #fff;
}
.color4{
background: #fff;
} /**
* 高级用法
*/ /**
* 条件语句
*/
p {
@if 1 + 1 == 2 { border: 1px solid; }
@if 5 < 3 { border: 2px dotted; }
}
p {
@if 1 + 1 == 2 {
background-color: #000;
} @else {
background-color: #fff;
}
} /**
* 循环语句
*/
@for $i from 1 to 10 {
.border-#{$i} {
border: #{$i}px solid blue;
}
} $i: 6;
@while $i > 0{
.item-#{$i} {
width: 2em * $i;
}
$i: $i - 2;
} @each $member in a, b, c, d{
.#{$member}{
background-image: url("/images/#{$member}.jpg");
}
} /**
* 自定义函数
*/
@function double($n){
@return $n * 2;
}
#sidebar {
width: double(5px);
} $unit: .05rem;
@function unit($value){
@return $unit * $value;
}
#sidebar {
width: unit(720);
} /**
* 修改单位,只影响后面的 css
*/
$unit: 1px;
#sidebar {
width: unit(720);
}
SASS常用语法的更多相关文章
- Markdown通用的常用语法说明
前言 Markdown 是一种轻量级的 标记语言,语法简洁明了.学习容易,还具有其他很多优点,目前被越来越多的人用来写作使用. Markdown具有一系列衍生版本,用于扩展Markdown的功能(如表 ...
- Markdown简介以及常用语法
Markdown简介以及常用语法 最近发现用markdown记录东西很方便,感觉和emacs的org mode很类似,但是windows下使用emacs不是很方便.特此记录一下markdown常用的语 ...
- Sql常用语法以及名词解释
Sql常用语法以及名词解释 SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) D ...
- Markdown常用语法
什么是Markdown Markdown 是一种方便记忆.书写的纯文本标记语言,用户可以使用这些标记符号以最小的输入代价生成极富表现力的文档. 通过Markdown简单的语法,就可以使普通文本内容具有 ...
- 2 hive的使用 + hive的常用语法
本博文的主要内容有: .hive的常用语法 .内部表 .外部表 .内部表,被drop掉,会发生什么? .外部表,被drop掉,会发生什么? .内部表和外部表的,保存的路径在哪? .用于创建一些临时表存 ...
- sql 常用语法汇总
Sql常用语法 SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) DCL—数据控 ...
- ES6常用语法
ECMAScript 6(以下简称ES6)是JavaScript语言的下一代标准.因为当前版本的ES6是在2015年发布的,所以又称ECMAScript 2015. 也就是说,ES6就是ES2015. ...
- python MVC、MTV 框架介绍 Django 模板系统常用语法
Django 框架简介一.MVC框架和MTV框架1.MVC 全名Model View Controller,是软件工程中的一种软件架构模式,把软件系统分为三个基本部分.优势: 耦合性低 重用性高 生命 ...
- PHP中Smarty引擎的常用语法
PHP中Smarty引擎的常用语法 输出今天的日期: {$smarty.now|date_format:"%H:%M %A, %B %e, %Y"} 实际上用到了PHP的time( ...
随机推荐
- iOS 技术篇:从使用到了解block底层原理 (一)
1.概述 block : Object - C对于闭包的实现 . 闭包 = 一个函数(或是指向函数的指针) +该函数执行的外部的上下文变量(自由变量) 2.对block的理解 可以嵌套定义,定义 bl ...
- HDU.2516.取石子游戏(博弈论 Fibonacci Nim)
题目链接 \(Description\) 1堆石子有n个.两人轮流取.先取者第1次可以取任意多个,但不能全部取完.以后每次取的石子数不能超过上次取子数的2倍,取完者胜.问谁能赢. \(Solution ...
- curl解压gzip页面gzcompress内容
$headers = array( //"Content-type:application/json;charset='utf-8'", "Cache-Control:n ...
- Python3基础之异常结构
自定义异常类 class ShortInputException(Exception): def __init__(self, length, atleast): Exception.__init__ ...
- Flask的使用2
1.Flask文件的配置 # 方式一: # 直接书写 app.config['SESSION_COOKIE_NAME'] = 'session_lvning' # 方式二: #引入setting.py ...
- TCP/IP通信协议
TCP/IP 是用于 Internet 的通信协议. 一.什么是 TCP/IP 1.TPC/IP 是供已连接 Internet 的计算机进行通信的协议: 2.TCP(Transmission Cont ...
- tcp keepalive选项
之前一直对tcp keepalive选项理解有误, 以为通过setsockopt函数设置SO_KEEPALIVE和相关参数后该socket则使用设置的keepalive相关参数 否则使用系统默认的:k ...
- Git:本地建服务器及入门使用方法
1. 安装与配置Git服务器 sudo apt-get install git 1.1 注册一个git账号, 用于运行和维护git sudo adduser git 1.2 创建证书登录: 收集所有需 ...
- Matplotlib新手上路(中)
接上回继续 一.多张图布局(subplot) 1.1 subplot布局方式 import matplotlib.pyplot as plt plt.figure() plt.subplot(3, 2 ...
- NSURLSession 相关清单
浅析 NSURLSession http://boboshone.com/blog/2013/10/21/nsurlsession-tutorial/ 介绍整体流程结构. iOS NSURL ...