1. Scss 基础使用

news/2024/9/22 18:29:51/

1. Scss 基础使用

1. 语法格式

Sass 有两种语法格式。首先是 SCSS (Sassy CSS) ,这种格式仅在 CSS3 语法的基础上进行拓展,所有 CSS3 语法在 SCSS 中都是通用的,同时加入 Sass 的特色功能。此外,SCSS 也支持大多数 CSS hacks 写法以及浏览器前缀写法 (vendor-specific syntax),以及早期的 IE 滤镜写法。这种格式以 .scss 作为拓展名。

另一种也是最早的 Sass 语法格式,被称为缩进格式 (Indented Sass) 通常简称 “Sass”,是一种简化格式。它使用 “缩进” 代替 “花括号” 表示属性属于某个选择器,用 “换行” 代替 “分号” 分隔属性,很多人认为这样做比 SCSS 更容易阅读,书写也更快速。缩进格式也可以使用 Sass 的全部功能,只是与 SCSS 相比个别地方采取了不同的表达方式这种格式以 .sass 作为拓展名。

任何一种格式可以直接导入 (@import) 到另一种格式中使用,或者通过 sass-convert 命令行工具转换成另一种格式

# Convert Sass to SCSS
$ sass-convert style.sass style.scss# Convert SCSS to Sass
$ sass-convert style.scss style.sass

2. 使用方式

Sass 可以通过以下三种方式使用:

  • 作为命令行工具;
  • 作为独立的 Ruby 模块 (Ruby module);
  • 或者作为 Rack-enabled 框架的插件(例如 Ruby on Rails 与 Merb)。

无论哪种方式都需要先安装 Sass gem (Windows 系统需要先安装 Ruby)

$ gem install sass

在命令行中运行 Sass

$ sass input.scss output.css

监视单个 Sass 文件,每次修改并保存时自动编译

$ sass --watch input.scss:output.css

监视整个文件夹

$ sass --watch app/sass:public/stylesheets

3. CSS 功能拓展

1. 嵌套规则

Sass 允许将一套 CSS 样式嵌套进另一套样式中,内层的样式将它外层的选择器作为父选择器

main p {color: #00ff00;width: 97%;.redbox {background-color: #ff0000;color: #000000;}
}

编译为

#main p {color: #00ff00;width: 97%; 
}#main p .redbox {background-color: #ff0000;color: #000000; 
}

2. 父选择器 &

在嵌套 CSS 规则时,有时也需要直接使用嵌套外层的父选择器,例如,当给某个元素设定 hover 样式时,可以用 & 代表嵌套规则外层的父选择器

a {font-weight: bold;text-decoration: none;&:hover { text-decoration: underline; }
}

3. 属性嵌套

有些 CSS 属性遵循相同的命名空间 (namespace),比如 font-family, font-size, font-weight 都以 font 作为属性的命名空间。为了便于管理这样的属性,同时也为了避免了重复输入,Sass 允许将属性嵌套在命名空间中,例如:

.funky {font: {family: fantasy;size: 30em;weight: bold;}
}

编译为

.funky {font-family: fantasy;font-size: 30em;font-weight: bold; 
}

4. 注释

Sass 支持标准的 CSS 多行注释 /* */,以及单行注释 //,前者会 被完整输出到编译后的 CSS 文件中,而后者则不会


http://www.ppmy.cn/news/4568.html

相关文章

接口测试(十)—— telnet和python代码测试dubbo接口

目录 一、传智健康项目介绍 1、项目描述 2、目标用户群体 3、项目模块 4、系统框架 二、Dubbo接口测试 1、RPC 2、Dubbo 3、查阅API文档 三、Telnet工具远程调用 1、启用telnet 2、telnet远程连接服务 3、telnet调用服务接口 四、python借助dubbo远程调用 1、安…

LeetCode HOT 100 —— 301.删除无效的括号

题目 给你一个由若干括号和字母组成的字符串 s ,删除最小数量的无效括号,使得输入的字符串有效。 返回所有可能的结果。答案可以按 任意顺序 返回。 思路 DFS 回溯算法: 首先最终合法的方案,必然有左括号的数量 右括号的数量 …

HCIE-12.9 杭州战报

一、前言 本篇文章是本人12.9日在杭州参加HCIE-RS考试的战报,供在元旦之前参加HCIE-RS考试赶末班车的大佬们参考,近期不参加考试的大佬们可以不用理会。 近期HCIE顺利通过,下一步计划更新前两年在学习数学建模过程中的有关笔记,有…

傻白入门芯片设计,盘点半导体业界的大佬(十六)

目录 一、台积电TSMC (1)姓名:胡正明 (2)姓名:林本坚 (3)姓名:余振华 (4)姓名:米玉杰 (5)姓名&#xff1…

25.Django大型电商项目之地址管理——如何使用三级联动菜单数据加载地址、保存数据、动态获取数据、设置默认值

1. 地址管理基本页面 1.1 概述 1.2 流程 修改templates的跳转链接center.html <ul><li><a href"/userapp/address/">地址管理</a></li> </ul>templates {% extends base.html %} {% block title %}用户中心{% endblock %} {…

多元宇宙算法求解电力系统多目标优化问题(Matlab实现)【电气期刊论文复现与算例创新】

&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️❤️&#x1f4a5;&#x1f4a5;&#x1f4a5; &#x1f4dd;目前更新&#xff1a;&#x1f31f;&#x1f31f;&#x1f31f;电力系统相关知识&#xff0c;期刊论文&…

两台linux服务器rsync自动备份文件

检查rsycn是否安装 检查方法&#xff1a;rpm -qa rsync 出现rsync 包名就是安装了 安装rsycn rsync的安装可以使用yum直接安装&#xff1a;yum install rsync rsycn的服务端/文件接收端配置 1、先创建备份目录 mkdir /data/xsbak2、服务端需要开启rsyncd服务&#xff0c;添加…

css知识复习点

四种css使用方式&#xff1a;内嵌式、外链式、行内式、导入式 复合选择器 后代选择器 选择器之间需要用空格隔开&#xff0c;后代不一定是儿子 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>复合…