在线编译 https://wow.techbrood.com/fiddle/11143

群组选择器的嵌套【编译前】

.container {
h1, h2, h3 {margin-bottom: .8em}
}

编译后

.container h1, .container h2, .container h3 { margin-bottom: .8em }

1. 优先使用scss中的变量

$biancolor:#ccc;

#deno{
color:$biancolor
}

说明

在scss中使用变量用$符号开头;
为什么我们要使用scss中的变量。
比如我们需要动态去切换主题的颜色,
我们就非常有必要去使用变量了哈。
这个虽然大家都会,但是在项目中就不一定回去使用变量了。

2.嵌套伪类:通过"&"实现 在中使用的":"符号 添加& 字符号

#deno{
.deo1{
background-color: #ccc;
&:hover{
color:red
}
}
}

编译后的

#deno .deo1 {
background-color: #ccc;
}
#deno .deo1:hover {
color: red;
}

3. @mixin 和 @include的使用

 @mixin 和 @include在项目中真的是超好用
当我们某一段css样式大量重复的时候,我们就可以了。
如果说:我们自定义的滚动条

编译前

//使用@mixin来定义共同的样式
@mixin test{
width:100px;
height:100px;
background:red
} // @include 来使用
#deno{
@include test()
}

编译后

#deno {
width: 100px;
height: 100px;
background: red;
}

4.传参 编译前

使用传递会让我们的css代码更加的灵活。
这样写起来会更加的高效
@mixin test($w,$h, $color){
width:$w;
height:$h;
background:$color
}; #deno{
@include test(200px,200px,pink);
}

编译后

#deno {
width: 200px;
height: 200px;
background: pink;
}

5. 默认传参

@mixin test($w:100px,$h:100px){
width:$w;
height:$h;
background-color:red;
}
#deno{
@include test(200px,200px);
}

默认参数 编译前

<!-- 默认参数优先放置在最后 -->
@mixin test($color,$size: 20px ) {
background: $color;
font-size: $size;
}
#deno {
@include test(
$color: green
)
}

编译后

#deno {
background: green;
font-size: 20px;
}

传参(指定参数) 这一种很有用


@mixin test($color,$size: 20px ,$w:100px ) {
background: $color;
font-size: $size;
width:$w
}
#deno {
@include test(
$color: green,
$w:200px
)
}

条件判断

@mixin xingzhaung($x){
@if($x==zhengfang){
width:200px;
height:200px;
background: #000;
}@else{
width:100px;
height:200px;
background: pink;
}
} div {
@include xingzhaung(zhengfang)
} 使用条件判断的时候,需要注意几点。
第一点就是需要添加 @符号
第二是: @mixin(函数方法理解为) 要在 @include(方法调用)之前
他们的位置千万不要颠倒了
否者会出问题,这个是第一个

条件语句的应用

比如说:滚动条样似的修改
超出几行隐藏显示省略号
字体大小、颜色这些都可以封装成为一个函数,直接使用就ok了哈

个人理解

在项目中,个人非常推荐去使用scss
scss在项目中最主要的就是这几个,但是很常用
如果小伙伴们在scss中发现了其他有趣的东西,欢迎评论

scss常用语法的更多相关文章

  1. scss 常用语法

    点击查看 sass 官方文档 1.编译 初学可以在atom 中编译 安装命令 gem install sass atom中安装atom-sass ,mac 中"control+option+ ...

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

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

  3. Markdown通用的常用语法说明

    前言 Markdown 是一种轻量级的 标记语言,语法简洁明了.学习容易,还具有其他很多优点,目前被越来越多的人用来写作使用. Markdown具有一系列衍生版本,用于扩展Markdown的功能(如表 ...

  4. Markdown简介以及常用语法

    Markdown简介以及常用语法 最近发现用markdown记录东西很方便,感觉和emacs的org mode很类似,但是windows下使用emacs不是很方便.特此记录一下markdown常用的语 ...

  5. Sql常用语法以及名词解释

    Sql常用语法以及名词解释 SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) D ...

  6. Markdown常用语法

    什么是Markdown Markdown 是一种方便记忆.书写的纯文本标记语言,用户可以使用这些标记符号以最小的输入代价生成极富表现力的文档. 通过Markdown简单的语法,就可以使普通文本内容具有 ...

  7. 2 hive的使用 + hive的常用语法

    本博文的主要内容有: .hive的常用语法 .内部表 .外部表 .内部表,被drop掉,会发生什么? .外部表,被drop掉,会发生什么? .内部表和外部表的,保存的路径在哪? .用于创建一些临时表存 ...

  8. sql 常用语法汇总

    Sql常用语法 SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) DCL—数据控 ...

  9. ES6常用语法

    ECMAScript 6(以下简称ES6)是JavaScript语言的下一代标准.因为当前版本的ES6是在2015年发布的,所以又称ECMAScript 2015. 也就是说,ES6就是ES2015. ...

  10. python MVC、MTV 框架介绍 Django 模板系统常用语法

    Django 框架简介一.MVC框架和MTV框架1.MVC 全名Model View Controller,是软件工程中的一种软件架构模式,把软件系统分为三个基本部分.优势: 耦合性低 重用性高 生命 ...

随机推荐

  1. java算法易筋经:常见java-API使用技巧

    摘要:算法练习的本质也在于锻炼编程思维,强化程序员的内力.因此给自己后面会持续更新的算法技巧内容简称算法易筋经. 本文分享自华为云社区<<java算法易筋经>之常见java-API使 ...

  2. DevSecOps 安全即代码基础指南

    在过去十年里我们见证了越来越多的企业开始或已经采用云技术,这也意味着云安全的重要性也越来越高.当谈及安全威胁,McKinsey 的一篇文章表明,云上大多数漏洞都是由于配置错误导致而非外部攻击造成底层云 ...

  3. 火山引擎DataLeap一站式数据治理解决方案及平台架构

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 在字节跳动内部,DataLeap数据平台数据治理团队致力于建立一站式.全链路的数据治理解决方案平台. 数据治理的概 ...

  4. Solon Web 开发,三、打包与运行

    Solon Web 开发 一.开始 二.开发知识准备 三.打包与运行 四.请求上下文 五.数据访问.事务与缓存应用 六.过滤器.处理.拦截器 七.视图模板与Mvc注解 八.校验.及定制与扩展 九.跨域 ...

  5. 自然语言处理 Paddle NLP - 机器同传技术及应用-理论

    基础 自然语言处理(NLP) 自然语言处理PaddleNLP-词向量应用展示 自然语言处理(NLP)-前预训练时代的自监督学习 自然语言处理PaddleNLP-预训练语言模型及应用 自然语言处理Pad ...

  6. 断点续传(上传)C#版

    断点续传(上传)Java版 1. 客户每次上传前先获取一下当前文件已经被服务器接受了多少 2. 上传时设定偏移量 服务端代码如下: /// <summary> /// 断点续传,获取已上传 ...

  7. 【HZERO】数据导入

    #数据导入 ##文档整理 通用导入客户端 https://open.hand-china.com/hzero-docs/v1.3/zh/docs/service/import/import/ 开放平台 ...

  8. Linux 安装Jupyter notebook 并开启远程访问

    一. Ubuntu下安装jupyter notebook 1. 使用Anaconda安装 conda install jupyter notebook 2. 使用pip安装 pip install j ...

  9. AtCoder Beginner Contest 168 (A~E,E题很有意思)

    比赛链接:Here AB水题, C - : (Colon) 时针转过得角度为:\(2π \times \frac{h + \frac m{12}}{12}\) 分针转过得角度为:\(2π \times ...

  10. Seata是什么?一文了解其实现原理

    一.背景 随着业务发展,单体系统逐渐无法满足业务的需求,分布式架构逐渐成为大型互联网平台首选.伴随而来的问题是,本地事务方案已经无法满足,分布式事务相关规范和框架应运而生. 在这种情况下,大型厂商根据 ...