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 ...
随机推荐
- js正则表达式验证(化繁为简)
以前用js写正则表达式验证,每一个文本框后面都要添加一个onblur函数,验证的信息少,也没体会到有多繁琐,这次项目中的页面比较多,页面中的信息也比较多,如果每个文本框都加一个验证函数的话,js验证代 ...
- 在java中public void与public static void区别
static 方法可以被main方法直接调用,而非static方法不可以.因为static方法是属于类的,是类方法.可以通过类名.方法名直接调用.而非static方法必须等对象被new出来以后才能使用 ...
- JVM内存管理中的垃圾回收策略
JVM垃圾回收策略 1.静态内存分配和回收 编译时已经确定了内存空间大小,程序被加载后则一次性分配好内存空间.程序结束后,则对应栈帧撤销,分配的静态内存空间则被回收. 2.动态内存分配和回收 程序运行 ...
- CentOS 6和CentOS 7命令区别
From http://www.cnblogs.com/bethal/p/5945026.html (1)桌面系统[CentOS6] GNOME 2.x[CentOS7] GNOME 3.x(G ...
- GIT和SVN比较
SVN与Git比较 摘要Svn是目前得到大多数人认可,使用得最多的版本控制管理工具,而Git的优势在于易于本地增加分支和分布式的特性,可离线提交,解决了异地团队协同开发等svn不能解决的问题.本文就这 ...
- ElasticSearch聚合分析API——非常详细,如果要全面了解的话,最好看这个
转自:http://www.tianyiqingci.com/2016/04/11/esaggsapi/ 前言 说完了ES的索引与检索,接着再介绍一个ES高级功能API – 聚合(Aggregatio ...
- C#中的线程(一)入门
C#中的线程(一)入门 Keywords:C# 线程Source:http://www.albahari.com/threading/Author: Joe AlbahariTranslator: ...
- kylin_异常_01_java.io.FileNotFoundException: /developer/apache-kylin-2.3.0-bin/tomcat/conf/.keystore
一.异常现象 kylin安装完,启动后,控制正常,kylin后台也能正常访问.但是去看kylin的日志,却发现报错了: SEVERE: Failed to load keystore type JKS ...
- nyoj-158-省赛来了(组合数)
题目链接 /* Name:nyoj-158-省赛来了 Copyright: Author: Date: 2018/4/25 17:07:22 Description: 暴力,秒天秒地 */ #incl ...
- 杂项之python利用pycrypto实现RSA
杂项之python利用pycrypto实现RSA 本节内容 pycrypto模块简介 RSA的公私钥生成 RSA使用公钥加密数据 RSA使用私钥解密密文 破解博客园登陆 pycrypto模块简介 py ...