sass实用知识点
本文总结sass相关核心知识点
说明:本文的内容是,我在开发实践中总结的实用性比较强的sass知识点,其他未涉及的知识,如果对你有作用请自行查阅
sass知识目录
-
一般写法
div{
p {}
}
&父选择器引用
div{
&:hover {}
&-span { background:red; }
}
相同前缀的css样式简写形式
div{
font: {
family: fantasy;
size: 30em;
weight: bold;
}
}
div{
font: 20px/24px fantasy {
weight: bold;
}
}
-
多行注释 /* */ 会被编译成css中的注释
单行注释 // 在编译后的css中去除
-
声明变量
局部变量 $width: 2px;
全局变量 $width: 50px !global;
数据类型
number -> 1 11.1 11px
string -> "title"
应用
$name: "p";
div #{$name} {
width: 100px;
}
color -> red
boolean -> true
null -> null
list -> 11px 10px 12px 或者 11px, 10px, 12px
map -> (key: value, key1: value1)
function
运算符
+ - * / % < > <= >=
其中 / 运算只在以下三种情况中生效
$width/2 和变量运算
(10px/8px) 加上小括号
5px + 8px/2px 作为其他运算表达式的一部分
-
@import 导入其他的css,scss文件
@import "demo"; 等效于 @import "demo.scss";
scss文件默认会编译成css文件,如果你的scss文件只想被其他文件import,可以在定义的文件名前面加上_
如 _demo.scss 然后使用 @import "demo" 即可
嵌套的@import
假设_demo.scss文件中定义了如下的css
div{
width: 100%;
}
在main.css中导入
.box {
@import "demo";
}
将编译成
.box div{
width: 100%;
}
@media 嵌套
编译后@media包裹在选择器的最上面,在做响应式时候,这种写法可以避免重复书写选择器
div {
width: 100%;
@media screen {
height: 100%;
}
}
@extend 选择器替换继承
基本使用
div{
width: 100%;
}
div.box {
height: 100%;
}
#id{
@extend div;
}
相当于将包含div的选择器的样式复制一份,然后把div替换成#id,编译后结果如下
div, #id {
width: 100%;
}
div.box, .box#id {
height: 100%;
}
占位符
div ye%box{
width: 100%;
}
#id{
@extend %box;
}
编译后结果
div ye#id {
width: 100%;
}
-
相当于定义函数
@mixin size($w, $h) {
width: $w;
height: $h;
}
div{
@include size(100%, 100%);
}
sass实用知识点的更多相关文章
- HTML5实用知识点
本文讲解HTML5实用知识点 新增的表单type Canvas使用 SVG使用 Audio使用 Video使用 网页缓存 文件缓存 后台worker Server-Sent Events 定位 拖放功 ...
- Sass 主要知识点小记
Sass 主要知识点小记 以前写样式的时候,每个元素的颜色,背景色都需要重新写一遍,然后就想CSS难道没有变量么?最后就查到Sass.但当时没有静下心来好好的看一下,今天正好有时间,就在这里边看边整理 ...
- canvas学习笔记,实用知识点总结(上)
本博客是本人日常学习笔记,作为重要知识点的总结记录,随笔风格可能更倾向于个人的学习习惯和方式,若对您有帮助十分荣幸,若存在问题欢迎互相学习探讨,前端小白一枚在此恭候. 一.基本使用规则 1.创建画布 ...
- dubbo实用知识点总结(三)
1. 服务降级 2. 优雅停机 3. 主机绑定 4. 访问日志 5. Multicast注册中心 6. zookeeper注册中心 7. 推荐用法 8. 容量规划 9. 基准测试工具包
- dubbo实用知识点总结(一)
1. dubbo基础架构 架构 特性 服务提供者 服务消费者 配置可以用dubbo.properties来替换 2. 注解配置 提供方(注意:serivce注解是dubbo的service) 消费者 ...
- dubbo实用知识点总结(二)
1. 参数验证 2. 结果缓存 3. 泛化引用 客户端没有对应接口类的情况,可以直接调用 4. 泛化实现 5. 回声测试 用于检测服务是否可用 6. 上下文信息 7. 隐式传参(不常用) 8. 异步调 ...
- WPF实用知识点
1.一个基本的WPF程序, 需要引入的程序集WindowsBase, PresentationCore, PresentationFramework using System; using Syste ...
- Node.js实用知识点
本文介绍如何使用nodejs 简单的HttpServer 调试nodejs 基础路由 nodejs配置开发和生产环境 nodejs核心模块一览 express用法 文件I/O nodejs模块 nod ...
- Mysql实用知识点总结
本文介绍MYSQL相关知识,方便日常使用查阅 目录 准备 MYSQL常用命令 语言结构 sql语句 外键 自然语言全文搜索 准备 你可以使用 Navicat Premium 12 或者 MySQL W ...
随机推荐
- 使用Navicat连接oracle时出现unsupported server character set ZHS16GBK的解决之道
原文网址http://blog.mn886.net/chenjianhua/show/ba1dc6f835be403ea159b0a5e2685ff2/index.html ORA-12737:Ins ...
- HBase学习3(win下使用Eclipse搭建hbase开发环境)
第一步:创建一个java project命名为wujiadong_hbase 第二步:在该工程下创建一个folder命名为lib(储存依赖的jar包) 第三步:将集群中的hbase安装目录下载一份到w ...
- 数据结构习题 线段树&树状数组
说明:这是去年写了一半的东西,一直存在草稿箱里,今天整理东西的时候才发现,还是把它发表出来吧.. 以下所有题目来自Lrj的<训练指南> LA 2191 单点修改,区间和 Fenwick直 ...
- Android 报错Android - Performing stop of activity that is not resumed
[原文] FROM STACKOVERFLOW: Just giving my 50 cents on the issue. Catching the exception is indeed one ...
- numpy中的matrix与array的区别
Numpy matrices必须是2维的,但是 numpy arrays (ndarrays) 可以是多维的(1D,2D,3D····ND). Matrix是Array的一个小的分支,包含于Array ...
- Redis简介 & 与Memcache的区别
redis 是一个基于内存的高性能key-value数据库. Reids的特点 Redis本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库统统加载在内存当中进行操 ...
- CSS基础(float属性与清除浮动)
3.8 这是CSS里比较重要的属性:浮动,这个属性会在以后经常用到,算是一个重点吧 浮动 语法:float:left | right | none 特点: 浮动的元素不占位置,脱离了标准文档流 ...
- 论文笔记 — MatchNet: Unifying Feature and Metric Learning for Patch-Based Matching
论文:https://github.com/ei1994/my_reference_library/tree/master/papers 本文的贡献点如下: 1. 提出了一个新的利用深度网络架构基于p ...
- MinGW main()
MinGW没有wmain入口函数,为了获取宽字符的参数,可以用系统API函数GetCommandLineW. main.cpp #include <iostream> #include & ...
- 20180403_调bug_大地保险_jar包冲突
一.异常现象 他们程序在本地通过java形式直接跑起来的时候,是正常的. 但是测试服务器上,程序跑到一半就不继续往下走了,而且,也不报错,日志里面没有任何信息. 二.异常解决 1.核心思想 抽丝剥茧, ...