SCSS其实就是SASS新语法, 增强了对CSS3语法的支持

1.变量(Variables)

/*声明变明*/
$color: #333;
$bgcolor:#f36; /*引用变量*/
body { body color: $color;}

2.嵌套(Nesting)

// 选择器的嵌套

// 传统css写法
section { margin: 10px; }
section nav { height: 25px; }
section nav a { color: #0982c1; }
section nav a:hover { text-decoration: underline; } // scss写法
section{
margin: 10px;
nav{
height: 25px;
a{
color: #0982c1;
&:hover{ text-decoration: underline;}
}
}
}

// 属性嵌套

// 传统css写法
li { font-style: italic; font-family: serif; font-weight: bold; font-size:1.2em; } // scss写法
li{
font:{
style: italic;
family: serif;
weight: bold;
size:1.2em;
}
}

3.Mixins ==> Mixins是SASS中最强大的特性之一, 简单点来说,Mixins可以将一部分样式抽出,作为单独定义的模块,被很多选择器重复使用, 每个都写在选择器里

// 格式
@mixin name($参数名:参数值){
/*样式规则*/
} // 简单的实例
@mixin error($borderWidth:2px){
border: $borderWidth solid #f00;
color: #f00;
} // @include调用mixin
/*直接调用error Mixins*/
.generic-error {
@include error();
} /*调用error Mixins,并将$borderWidth参数重定义为3px*/
.login-error {
@include error(3px);
} 老的语法中还支持另一种调用Mixins的方法。就是使用+
.generic-error
+error()
.login-error
+error(3px)

3.选择器继承(Selector Inheritance) ==> SASS可以从一个选择器继承另一个选择器下的所有样式。共用属性

%block {
margin: 10px 5px;
padding: 2px;
}
p {
@extend %block;
border: 1px solid #eee;
}
h1{
@extend %block;
color:red;
}
// 编译出来的CSS
p{
border: 1px solid #eee;
}
h1{
color:red;
}
p, h1{
margin: 10px 5px;
padding: 2px;
}

scss语法的更多相关文章

  1. scss语法介绍

    这里既然是对语法的介绍,那么至于如何安装和编译scss我就不多少了,主要是因为本人在群里认识的小伙伴有的不会用scss,所以就借着放假的机会来对scss语法做个总结,博主在开发过程中用scss蛮多,所 ...

  2. sublime text 中 .vue文件中的scss语法无法高亮bug怎么解决

    如题,在vuejs的单文件组件中,.vue 结尾的文件里面使用scss的时候,无法高亮.因为 sublime默认是不带sass语法高亮的,安装 sublime SCSS语法高亮包即可. 方法如下:   ...

  3. scss语法格式(常用版记录)

    这篇文章是我自己在学习Scss时的笔记~   更多学习可以参照官网(链接:https://www.sass.hk/docs/) 一,Scss语法格式 1.嵌套规则   2.父选择器&(伪类嵌套 ...

  4. 在vue项目中使用scss,以及vscode适配scss语法(解决使用scss语法编辑器报错)

    项目搭建好之后 安装sass 依赖包 npm install --save-dev sass-loader //sass-loader依赖于node-sass npm install --save-d ...

  5. angular使用sass的scss语法

    一.现象 为了简写样式 二.解决 1.安装sass ,利用npm 安装(npm工具如果没有,请先自行安装好) (1).npm install node-sass --save-dev (2).npm ...

  6. scss - 语法

    1.在一个样式导入另一个样式(@import "example.css") 2.scss单行注释不会显示出来 3.强大的变量(定义后,全局可使用) 4.全局默认变量(加!defau ...

  7. SCSS语法格式及编译调试

    一.SASS编译 Sass 的编译有多种方法: 命令编译 GUI工具编译 自动化编译 1.1 命令编译 1)单文件编译 sass <要编译的Sass文件路径>/style.scss:< ...

  8. scss/less语法以及在vue项目中的使用(转载)

    1.scss与less都是css的预处理器,首先我们的明白为什么要用scss与less,因为css只是一种标记语言,其中并没有函数变量之类的,所以当写复杂的样式时必然存在局限性,不灵活,而scss与l ...

  9. CSS预处理框架:less,scss

    CSS预处理器:less和sass:CSS 预处理器是一种语言用来为 CSS 增加一些编程的的特性,无需考虑浏览器的兼容性问题,例如你可以在 CSS 中使用 变量.简单的程序逻辑.函数等等在编程语言中 ...

随机推荐

  1. SQL Server查询某个字段存在哪些表中

    一.查询SQL Server中所有的表 SQL语句:SELECT * FROM sys.tables name列表示所有的表名. 二.查询SQL Server中所有的列 SQL语句:SELECT * ...

  2. 时间控件 BeatPicker

    项目展示 样式异样,可修改此样式,详见官网:https://github.com/ACT1GMR/BeatPicker --- 开始使用 1.引入js&css文件 <link rel=& ...

  3. absolute绝对定位的非绝对定位用法

    总结: position为absolute的元素如果没有设置left, top等值与left:0;top:0;的的效果是不一样的.例如一个div中有个absolute属性元素,其没有left或是top ...

  4. Hibernate查询_HQL_EJBQL_QBC_QBE

    查询按功能强弱可以分为以下几种:Native SQL > HQL > EJBQL > QBC > QBE 1.Native SQLNative SQL为数据库系统本身的SQL, ...

  5. MFC 窗体注册 WNDCLASS

    //初始化 //初始化包括窗口类的定义.注册.创建窗口实例和显示窗口四部分 { HWND hwnd; MSG Msg; WNDCLASS wndclass; char lpszClassName[]= ...

  6. QSignalMapper Class

    /************************************************************************************** * QT QSignal ...

  7. dm8127前段采集和抓拍

         高清监控(944275216) 2014-1-17 9:36:24自主研发高清网络摄像机,720P.960P.1080P系列产品,经济型.低照型.宽动态型等各种机型可选,支持onvif.P2 ...

  8. UART通信协议

    第一部分: UART使用的是 异步,串行通信.    串行通信是指利用一条传输线将资料一位位地顺序传送.特点是通信线路简单,利用简单的线缆就可实现通信,降低成本,适用于远距离通信,但传输速度慢的应用场 ...

  9. 【Java 线程的深入研究3】最简单实例说明wait、notify、notifyAll的使用方法

    wait().notify().notifyAll()是三个定义在Object类里的方法,可以用来控制线程的状态. 这三个方法最终调用的都是jvm级的native方法.随着jvm运行平台的不同可能有些 ...

  10. ADO连接数据库【msado15.dll】

    Microsoft ActiveX Data Objects (ADO) 注册表查看ADO版本:HKEY_LOCAL_MACHINE\Software\Microsoft\DataAccess下有Ve ...