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. 深入理解MongoDB的复合索引

    更新时间:2018年03月26日 10:17:37   作者:Fundebug    我要评论 对于MongoDB的多键查询,创建复合索引可以有效提高性能.这篇文章主要给大家介绍了关于MongoDB复 ...

  2. archdexls主题游戏页面game-play.php有评论时,报错( ! ) Warning: printf(): Too few arguments in D:\wamp\www\wp-content\themes\arcadexls\games-play.php on line 97

    ( ! ) Warning: printf(): Too few arguments in D:\wamp\www\wp-content\themes\arcadexls\games-play.php ...

  3. CSS实现圆角六色渐变自适应按钮

    Css代码 .g_a{display:-moz-inline-stack; display:inline-block; border-bottom:1px solid #cccccc; border- ...

  4. SpringMVC & SpringBoot小记

    SpringMVC 1.SpringMVC常用注解 https://blog.csdn.net/lipinganq/article/details/79155072 :@Component.@Serv ...

  5. js彈出層或者js彈出引用url Frame 層

    function Popup() { var _this = this; this.CssName = "layermask";//樣式 //遮蓋層 this.hiddLayer ...

  6. DirectoryEntry 账户启动与停用 以及创建账户等

    启动账户: DirectoryEntry usr = new DirectoryEntry("LDAP://CN=New User,CN=users,DC=fabrikam,DC=com&q ...

  7. int、long、longlong、float、double、long double的范围

  8. Ubuntu13.04下Eclipse中文乱码解决

    参考:http://www.linuxidc.com/Linux/2011-12/50056.htm baoyu@baoyu:~$ gedit /var/lib/locales/supported.d ...

  9. uniqid,md5,microtime

    <?php header("content-type:text/html;charset=utf-8"); $str = uniqid(md5(microtime(true) ...

  10. 手淘H5移动端适配方案flexible源码分析

    移动端适配一直是一个值得探讨的问题,在业余时间我找了一些页面,查看了一些厂商对于移动端H5页面的适配方案,看到了几个典型的例子,今天就来记录一下我看到的第一个典型的例子,也是我们公司目前普通H5项目正 ...