龙空技术网

Sass 嵌套

MAO大侠 87

前言:

此刻你们对“css类嵌套”大概比较关心,朋友们都想要了解一些“css类嵌套”的相关资讯。那么小编同时在网上网罗了一些关于“css类嵌套””的相关资讯,希望大家能喜欢,同学们一起来了解一下吧!

嵌套规则

Sass 允许我们将以与html相同的方式嵌套css选择器,将一套 CSS 样式嵌套进另一套样式中,内层的样式将它外层的选择器作为父选择器,比如:

// .scss语法#main { width: 97%; p, div { font-size: 2em; a { font-weight: bold; } } pre { font-size: 3em; }}// 编译为.css#main { width: 97%; }#main p, #main div { font-size: 2em; }#main p a, #main div a { font-weight: bold; }#main pre { font-size: 3em; }

嵌套功能避免了重复输入父选择器,而且也使得复杂的 CSS 结构更加便于管理。

注意:在Sass中,ul、li和a选择器嵌套是在nav选择器中的,在css中,规则时逐个定义的(不是嵌套的)。

父选择器 &

在嵌套 CSS 规则时,有时候我们需要直接使用到嵌套外层的父选择器,比如,当给某一个元素设定 hover 样式时或者是当 body 元素有个 classname 时,可以用 & 代表嵌套规则外层的父选择器。

嵌套属性

许多CSS属性具有相同的前缀 ,比如 font-family,font-size,font-weight ,text-align,text-transform,text-overflow前三者和后三者分别是以 font 和 text 作为属性的命名空间,为了便于管理这样的属性,同时也为了避免重复输入,Sass 允许将属性嵌套在命名空间中。

// .scss 语法font: { family: Helvetica, sans-serif; size: 24px; weight: bold;}text: { align: center; transform: lowercase; overflow: hidden;}// 编译后的普通cssfont-family: Helvetica, sans-serif;font-size: 24px;font-weight: bold;text-align: center;text-transform: lowercase;text-overflow: hidden;
占位符选择器 %foo

Sass 额外提供了一种特殊类型的选择器:占位符选择器 (placeholder selector),它与常用的 id 与 class 选择器写法相似,只是 # 或 . 替换成了 %,必须通过 @extend 指令调用。

标签: #css类嵌套 #php嵌套div