【ArchSummit架构师峰会】探讨数据与人工智能相互驱动的关系>>> 了解详情
写点什么

Sass 3 兼容 CSS3,支持选择器继承

  • 2010-05-25
  • 本文字数:1110 字

    阅读完需:约 4 分钟

当 InfoQ 上一次在网站上发表 Sass 样式表语言访谈的时候,项目维护者 Nathan Weizenbaum 就已经承诺未来的 Sass 将会在当前语法的基础上增加对类 CSS 的括号语法的支持。现在,Haml/Sass 3已经基本完成,预期发布时间是五月十号,其主要特性便是在 Sass 语法上的改变:

毫无疑问第三版的焦点将会集中在 Sass 上。但是我们也会将部分精力放在 Haml 上。不过考虑到兼容性,当前我们肯定会继续使用代码稳定的 2.4 版。

新 Sass 语法叫做 SCSS(Sassy CSS),它是 CSS3 的一个超集

这就是说它 100% 兼容 CSS3:每一个有效的 CSS3 文件也是有效的 SCSS 文件。不仅如此,它还支持我们能够找到的所有扩展,甚至包括一些非标准语法,例如微软的 expression() 函数和 filter 属性。

Sass 使用变量、操作、嵌套选择器(selector)和 Mixin 来增强样式表,这些基本功能在新版本没有任何改变。 Sass 修改后的语法希望能够尽量减少和 CSS 语法的差异,以吸引更多的用户使用。修改语法的另一个好处是可以使得 CSS 工具更容易支持 Sass。 Sass 的旧有语法将会继续存在并且能够为旧版本用户提供良好兼容性。但是,将 SCSS 和 CSS3 强制兼容付出的一个代价就是不得不废弃 Sass 的一些句法特性:变量前缀的“!”号(现在使用的是“$”号)以及赋值时候的“=”号(现在是使用“:”号)。处理引号中用于显示的字符串的语法也改变了。

另外一个 Sass 的新特性是 @extend 指令,这个指令允许一个选择器继承任意选择器的所有样式

设计网页的时候经常会遇到这样的情况:一个类可能除了自己的样式外,还需要其他类的所有样式。处理这种情况最常用的办法是在 HTML 中使用一个泛化的类和一个特化的类。

不幸的是,这就意味着我们不得不一直牢记同时使用(例如).error 和.seriousError。这将会导致沉重的维护负担,诡异的 bug 以及无效样式。

@extend 是通过插入扩展选择器(例如.seriousError)发挥作用的,无论这个扩展选择器(例如.error)在样式表的何处出现。

迄今为止, xCSS 是所有 CSS 编译器中对选择器完全继承特性支持最好的。但是,完全继承中最重要的一块仍然不被 xCSS 支持:.seriousError 只能选择器恰好是.error 的时候才能继承,而选择器是.error.instrusion 或者.admin.error 则无法继承。

Sass 3 同样也支持源文件在 CSS、Sass 和 SCSS 之间相互转换,并且支持将 Sass 2 语法转换为 Sass 3 语法。

Sass::Plugin 是一个在 Sass 文件更改时候自动更新 CSS 文件的工具,在新版本中性能会做出巨大提升。不仅如此,使用–watch 参数,在 sass 命令行中可以启用自动升级功能。

Haml 的改变包括 HTML5 自定义数据属性的生成和多行语法的简化。

查看英文原文: Sass 3 Delivers CSS Compatibility, Selector Inheritance

2010-05-25 20:541737
用户头像

发布了 90 篇内容, 共 32.9 次阅读, 收获喜欢 5 次。

关注

评论

发布
暂无评论
发现更多内容

低代码:推动新质生产力的引擎

天津汇柏科技有限公司

低代码开发 新质生产力

支持M1/M2/M3:Omi NTFS磁盘管理助手下载

Rose

数值计算和科学编程MATLAB R2023b中文版永久安装密钥【Mac/win]】

Rose

油猴Safari浏览器插件 Tampermonkey for Mac中文破解版

Rose

大量数据如何做分页处理

华为云开发者联盟

开发 数据处理 华为云 华为云开发者联盟 企业号2024年4月PK榜

AIGC创作活动 | 跟着UP主秋葉一起部署AI视频生成应用!

阿里云大数据AI技术

人工智能 自然语言处理 阿里云

必须要了解的11 个 HTML 技巧

伤感汤姆布利柏

[自研开源] MyData v0.8.0 更新日志

LIEN

开源 数据仓库 数据融合 数据集成 API对接

分享10个HTML小技巧,提高你的编码技能

秃头小帅oi

多媒体播放器软件Infuse for Mac v7.7.3免激活版

影影绰绰一往直前

云起无垠创始人沈凯文博士入选《2023胡润U30中国创业先锋》榜

云起无垠

Archicad 27 for Mac v27.2.0激活版:建筑设计新纪元

影影绰绰一往直前

【FAQ】HarmonyOS SDK 闭源开放能力 —Push Kit(3)

HMS Core

HarmonyOS

AutoSwitchInput Pro 自动切换输入法专业版for mac 支持M1、M2

Rose

WidsMob AI Retoucher for Mac(AI照片编辑工具) 中文版

Rose

Mac文件管理器和FTP客户端ForkLift中文破解版 支持M1和mac14系统

Rose

可视化网页设计软件 Blocs for mac v5.2.3激活版

影影绰绰一往直前

强大的压缩和解压缩工具Keka for Mac v1.3.8中文激活版

影影绰绰一往直前

直播预告 | KaiwuDB 解析器之语义解析

KaiwuDB

数据库 语义分析

精准高效测试计划,人工智能帮你制定

霍格沃兹测试开发学社

新特性速览!Sermant重磅更新,1.4.0 release版本发布

华为云开源

开源 微服务 服务治理 版本更新 sermant

终端SSH工具SecureCRT如何使用? mac SecureCRT使用教程 附SecureCRT永久安装密钥

Rose

详解Java Chassis 3与Spring Cloud的互操作

华为云开发者联盟

Java 微服务 华为云 华为云开发者联盟 企业号2024年4月PK榜

面向 NGINX 和 NGINX Plus 的 OpenTracing

NGINX开源社区

ruby OpenTracing Jaeger zipkin NGINX PLUS

FastRawViewer for mac(Raw查看器)v2.0.8激活版

影影绰绰一往直前

HostsWard for Mac 2024.1 注册激活版 macOS广告拦截软件

影影绰绰一往直前

JetBrains CLion 2024 for Mac v2024.1中文激活版

影影绰绰一往直前

【Mac/win永久激活】Acrobat Pro DC 2024直装便携版

Rose

Tipard Video Converter Ultimate for Mac v10.2.60中文版

影影绰绰一往直前

WiFi Explorer Pro for mac v3.6.3激活版 WiFi无线网络管理工具

影影绰绰一往直前

多功能文本计算器 Soulver 3 for Mac v3.10.3激活版

影影绰绰一往直前

Sass 3兼容CSS3,支持选择器继承_Ruby_Paul Blair_InfoQ精选文章