首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

编写灵活、稳定、高质量CSS代码规范

三、不要使用 @import 3.1 不用原因 标签相比,@import 指令要慢很多,不光增加了额外请求次数,还会导致不可预料问题。...五、带前缀属性 5.1 垂直对齐 当使用特定厂商带有前缀属性时,通过缩进方式,让每个属性值在垂直方向对齐,这样便于多行编辑。 5.2 Example ?...过度使用简写形式属性声明会导致代码混乱,并且会对属性值带来不必要覆盖从而引起意外副作用。 7.3 Example ? 八、Less 和 Sass嵌套 8.1 尽量不嵌套 避免不必要嵌套。...这是因为虽然你可以使用嵌套,但是并不意味着应该使用嵌套。只有在必须将样式限制在父元素内(也就是后代选择器),并且存在多个需要嵌套元素时才使用嵌套。 8.2 Example ?...(6)使用 .js-* class 来标识行为(样式相对),并且不要将这些 class 包含到 CSS 文件中。 在为 Sass 和 Less 变量命名时也可以参考上面列出各项规范。

1.2K20

前端代码规范

这样做好处是,可以避免在 HTML 中使用字符实体标记(character entity),从而全部文档编码一致(一般采用 UTF-8 编码)。 ?...五、带前缀属性 5.1 垂直对齐 当使用特定厂商带有前缀属性时,通过缩进方式,让每个属性值在垂直方向对齐,这样便于多行编辑。 5.2 Example ?...过度使用简写形式属性声明会导致代码混乱,并且会对属性值带来不必要覆盖从而引起意外副作用。 7.3 Example ? 八、Less 和 Sass嵌套 8.1 尽量不嵌套 避免不必要嵌套。...这是因为虽然你可以使用嵌套,但是并不意味着应该使用嵌套。只有在必须将样式限制在父元素内(也就是后代选择器),并且存在多个需要嵌套元素时才使用嵌套。 8.2 Example ?...(6)使用 .js-* class 来标识行为(样式相对),并且不要将这些 class 包含到 CSS 文件中。 在为 Sass 和 Less 变量命名时也可以参考上面列出各项规范。

2.3K31
您找到你想要的搜索结果了吗?
是的
没有找到

Sass入门使用指南

嵌套规则 &标识符: 在需要避免sass默认解套后空格连接父子选择器导致样式不生效情况下使用&处理,如遇到伪类选择器:hover等。...article a { color: blue; &:hover { color: red } } 群组选择器嵌套: 多个子选择器拥有公共父选择器,并且需要给子选择器设置通用属性情况...)样式是 Sass 默认输出格式,能够清晰反映 CSS HTML 结构关系。...选择器属性等单独占用一行,缩进量 Sass 文件中一致,每行缩进量反映了其在嵌套规则内层数。当阅读大型 CSS 文件时,这种样式可以很容易地分析文件主要结构。...嵌套选择器在输出时没有空行,不嵌套选择器会输出空白行作为分隔符。

3.3K20

您知道SASS吗?

SASS使嵌套/分组CSS选择器和构建样式表变得更加容易 Sass通过在其中嵌套CSS类或选择器并在后台生成CSS使其成为可能。...现在如果你用sass来做这件事,它看起来是这样: 上面的示例展示了SASS如何通过使用(&)将CSS选择器串联在({})中来嵌套几个选择器。.../类中父子关系分组,就像您进行选择器连接方式一样,只是添加了一个(&),您只需多加几个括号就能完成。...对选择器分组并创建嵌套选择器时简直轻而易举,因为Sass自动帮我们完成了大量工作。我可以毫不夸张说我比使用纯CSS设置样式快了2倍。总体感觉就是“真香”。...您可以使用Mixins将CSS代码段重用到其他选择器 您不仅可以轻松地用更少代码嵌套CSS选择器,而且可以重用一些代码片段来解决整个UI中某些CSS问题。 Mixins可以帮助您做到这一点。

88710

现代 CSS 解决方案:原生嵌套(Nesting)

很早之前,就写过一篇原生嵌套相关文章 -- CSS 即将支持嵌套SASS/LESS 等预处理器已无用武之地?...CSS 原生嵌套语法 在之前,只有在 LESS、SASS 等预处理器中,我们才能使用嵌套写法,像是这样: div { & > p { color: red; }...如果我们不使用具体 ClassName,而是使用标签名称选择器,像是这样: div { border: 1px solid #000; h3 { color:...SASS 等类似,& 符号在嵌套中,也表示嵌套选择器本身,因此,上面两个嵌套选择器最终表达式实则为: div h3 { color: red }; div h3 span { color blue...使用嵌套规则好处在于: 更加易读和易维护,嵌套帮助我们编写更易于维护 CSS,基于嵌套,我们可以更好控制样式作用域 更少代码,嵌套帮助我们编写更少代码,因为我们不需要一遍又一遍地重复父选择器

31540

【编码规范】Airbnb CSS u002F Sass 编码风格指南

类名建议使用破折代替驼峰法。如果你使用 BEM,也可以使用下划线(参见下面的 OOCSS 和 BEM)。 不要使用 ID 选择器。 在一个规则声明中应用了多个选择器时,每个选择器独占一行。....listing-card--featured 是一个修饰符(modifier),表示这个块 .listing-card 有着不同状态或者变化。...Bad .foo { border: none; } Good .foo { border: 0; } Sass 语法 使用 .scss 语法,不使用 .sass 原本语法。...扩展指令 应避免使用 @extend 指令,因为它并不直观,而且具有潜在风险,特别是用在嵌套选择器时候。即便是在顶层占位符选择器使用扩展,如果选择器顺序最终会改变,也可能会导致问题。...} } } 当遇到以上情况时候,你也许是这样写 CSS HTML 强耦合(也是脆弱) —或者— 过于具体(强大) —或者— 没有重用 再说一遍: 永远不要嵌套 ID 选择器

2.4K20

网页编码显示CSS加载

[TOC] (1) HTML编码规范 用两个空格来代替制表符(tab),嵌套元素应当缩进一次(即两个空格); 属性定义确保全部使用双引号,绝不要使用单引号 不要省略可选结束标签(closing tag...可以避免在 HTML 中使用字符实体标记(character entity),从而全部文档编码一致(一般采用 UTF-8 编码)--> 标签相比,@import 指令要慢很多,不光增加了额外请求次数,还会导致不可预料问题; (解决办法:使用多个 元素,通过 Sass 或...当使用特定厂商带有前缀属性时,通过缩进方式,让每个属性值在垂直方向对齐,这样便于多行编辑。...Less 和 Sass 中避免非必要嵌套; 选择器要尽可能短,并且尽量限制组成选择器元素个数,建议不要超过 3 。

1.5K20

高效开发之SASS

SASS优点可以简单规纳为以下几点:  增加了一些编程特性  简少CSS代码重复性代码冗余  维护方便  适应性更强,可读性更强 代码从层次不清楚?css不够灵活?开发繁杂而痛苦?...使用 俗话说,简单才是最好SASS其实就是一普通文本文件,支持CSS所有格式,当然后缀名不同哦,他后缀名是.scss,意思为Sassy CSS。...嵌套 SASS允许选择器嵌套。...在嵌套代码块内,可以使用&引用父元素。比如a:hover伪类,可以写成: a {    &:hover { color: #ffb3ff; }   } 4 注释 SASS共有两种注释风格。...继承 当我们需要为多个元素定义相同样式时候,我们可以考虑使用继承做法。 SASS允许一个选择器,继承另一个选择器

1.3K10

Sass速通(二):嵌套作用域

Sass 提供了嵌套书写方式,用以简化选择器书写,同时也带来了“作用域”。...嵌套 选择器嵌套Sass 中,可以在父选择器中写子选择器,以嵌套形式来表达关联关系,这样做可以减少我们重复书写父选择器工作量。...元素只要满足群组中任何一个选择器,都会使用群组对应样式进行渲染,如 a, span, label { color: grey; } 在 Sass 中,我们可以使用嵌套形式来简写群组。...变量作用域 在 Sass 中,变量只能在它被声明层级和子层级访问;如果一个变量在不同层级中被重复定义,在使用时会从下到上寻找最近定义。这与 JS 中函数作用域相似。...Sass 媒体查询好处: 以前使用原生 CSS 做响应式布局时,我们需要先写好不同媒体查询区块,整理出元素在不同设备特殊样式,然后写入对应区块。

1.5K20

09-移动端开发教程-Sass入门

变量支持块级作用域,嵌套规则内定义变量只能在嵌套规则内使用(局部变量),不在嵌套规则内定义变量则可在任何地方使用(全局变量)。将局部变量转换为全局变量可以添加 !global 声明。...嵌套(Nesting) 6.1 嵌套规则 (Nested Rules) Sass 允许将一套 CSS 样式嵌套进另一套样式中,内层样式将它外层选择器作为父选择器。...& (Referencing Parent Selectors: &) 在嵌套 CSS 规则时,有时也需要直接使用嵌套外层选择器,可以用 & 代表嵌套规则外层选择器。...继承(扩展) 11.1 基本继承 sass中,选择器继承可以让选择器继承另一个选择器所有样式,并联合声明。使用选择器继承,要使用关键词 @extend,后面紧跟需要继承选择器。...导入文件 Sass导入( @import)Sass文件规则和CSS有所不同,编译时会将 @importscss文件合并进来只生成一个CSS文件。

2.3K90

09-移动端开发教程-Sass入门

变量支持块级作用域,嵌套规则内定义变量只能在嵌套规则内使用(局部变量),不在嵌套规则内定义变量则可在任何地方使用(全局变量)。将局部变量转换为全局变量可以添加 !global 声明。...嵌套(Nesting) 6.1 嵌套规则 (Nested Rules) Sass 允许将一套 CSS 样式嵌套进另一套样式中,内层样式将它外层选择器作为父选择器。...& (Referencing Parent Selectors: &) 在嵌套 CSS 规则时,有时也需要直接使用嵌套外层选择器,可以用 & 代表嵌套规则外层选择器。...继承(扩展) 11.1 基本继承 sass中,选择器继承可以让选择器继承另一个选择器所有样式,并联合声明。使用选择器继承,要使用关键词 @extend,后面紧跟需要继承选择器。...导入文件 Sass导入( @import)Sass文件规则和CSS有所不同,编译时会将 @importscss文件合并进来只生成一个CSS文件。

1.7K60

第九十六期:scss中选择器

选择器嵌套 和普通css代码相比,scss允许我们进行选择器嵌套。这样有利于我们更好组织代码。 选择器嵌套可以使代码更加直观,同时也可以将继承关系表现更加清晰。...html层级结构去计算css属性值,仔细想一想,我们写嵌套选择器,其实就是这么回事儿。...占位符选择器和常用选择器以及ID选择器除了是以百分%开头之外,没有其他区别。...为了让我们css代码重用性更好,我们需要尽量做到模块儿化,同时需要尽量减少sass嵌套层数。...因为sass-lint检查到嵌套层数超过3层就会提示报错。 多层级嵌套一方面在渲染时可能会消耗一定性能,即影响sass编译速度,也影响界面的渲染速度。

1.5K30

Sass和Less(预处理器)「建议收藏」

Sass和Less(预处理器) 一、了解Sass和Less 二、Sass和Less 语法 2.1 注释 2.2 语法 赋值 插值 作用域 选择器嵌套、伪类嵌套、属性嵌套Sass) 运算 函数 混合、命名空间...Sass作用域有顺序。 图片 选择器嵌套、伪类嵌套、属性嵌套Sass) 在Less和Sass中,可以对标签嵌套,在里面写各个层级写相应样式,编译完成后,会自动写好对应选择器。...减少复杂编译选择器代码。 伪类嵌套,需要在伪类冒号前面加&,不然会有空格。 属性嵌套只有在Sass中有,Less没有。...如果进行不同单位计算,会按照第一个单位进行计算,只计算值。 ---- 在Sass不同单位不能进行计算,默认/是分割,不会像Less一样会认为是除号。...样式可以单独显示,也可以在其他使用混入,如果不想选择器编译出来可以在样式后面加一个(),就不会编译出来,可以在括号中进行传参。

3.4K10

CSS Modules VS. styled-components,哪个才是解决 CSS 不足之处更好方案?

此外,不同种类选择器,例如ID 选择器、类选择器、元素选择器权重也不一样,这很容易引起样式相互覆盖或冲突。虽然可以通过差异化类命名方式来避免全局冲突,但这又会导致类命名复杂度上升。...因此,相比 CSS,Sass / Less 更像是一门编程语言,可以提升写 CSS 效率,代码更易于组织和维护。...这两者解决问题采用是两种不同思路:CSS Module 是通过工程化方法,加入了局部作用域和模块机制来解决命名冲突问题。CSS Module 通常会配合 Sass 或者 Less 一起使用。...Sass / Less 进行组合使用,从而既能拥有 Sass / Less CSS 预处理器能力(规则、变量、混入、选择器、继承等),又可以拥有 CSS Modules 提供局部作用域能力,避免全局污染...),并添加带有 componentId 特殊注释标记到 稍后将使用元素。

7.3K72

谈谈 CSS 预处理器

功能 Sass 常用有几种功能: 变量:变量中可以存储颜色、字体或任何 CSS 值。 嵌套:可嵌套 CSS 选择器,提供清晰层次结构。 混合:可以定义&重用代码块。...扩展/集成:可以在一个选择器内继承另一个选择器。 操作符:可以在 CSS 中使用操作符进行计算。 条件/循环语句:可以循环/条件生成 CSS。 自定义函数:可以自定义复杂操作函数。...优点 使用广泛。 功能支持完善。 可编程能力强。 缺点 CSS 复杂度不可控。 node-sass 国内安装不易(非 Sass 本身缺点,dart-sass 可代替)。 3....Less[3] Less 和 Sass 类似,完全兼容 CSS 语法,并给 CSS 提供了变量、嵌套、混合、运算等可编程能力。Less 通过 JavaScript 实现,可在浏览器端直接使用。...功能 Less 常用有几种功能: 变量:变量中可以存储颜色、字体或任何 CSS 值。 嵌套:可嵌套 CSS 选择器,提供清晰层次结构。 混合:可以定义&重用代码块。

2.5K31
领券