Sass 增强语法的样式表

功能:

  • 完全兼容CSS3
  • 相对CSS,扩展了变量、嵌套和mixins
  • 对控制颜色和其他值的非常有用的方法
  • 高级功能,如库的直接控制
  • 良好的格式,自定义输出

语法

对于Sass,有两种语法。

一种叫SCSS(Sassy CSS),它是CSS语法的扩展,也就是说,每个有效的CSS3样式对于一个有效的SCSS。并且SCSS理解更多的CSS技巧和厂商特性,里如果IE8的filter语法。

第二种是旧些的语法,叫SASS。提供一种写CSS的便捷方式。

前者的文件后缀名是.scss,后者是.sass。

使用Convert命令可以相互转换:

sass-convert style.sass style.scss

反之亦然

使用方法

1. 安装

$gem install sass

2. 转换

sass input.scss  output.css

3. 监控

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

目录:

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

CSS扩展

1. 嵌套规则

  Sass允许CSS嵌套到另外一个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.引用父选择器:&

  在嵌套使用中,有时候需要引用父元素:  

a {
    font-weight: bold;
    text-decoration: none;
    &:hover { text-decoration: underline; }
    body.firefox & { font-weight: normal; }
}

  编译后:  

a {
    font-weight: bold;
    text-decoration: none; }
    a:hover {
        text-decoration: underline;
    }
    body.firefox a {
        font-weight: normal;
}        

3.嵌套属性

  在同一个命名空间下,CSS有时候会有多个属性,例如font-family,font-size和font-weight都在font命令空间下。使用嵌套,将减少输入。Sass提供冒号(:)来支持这个方法。例如:  

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

  编译后:

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

  也是可以带值的

.funky {
    font: 20px/24px fantasy {
        weight: bold;
    }
}

  编译后:

.funky {
  font: 20px/24px fantasy;
    font-weight: bold;
}

注释

  方法:/*  */或者//

@规则

1. @import

  导入SCSS和Sass文件。所有导入的文件都会被合并成一个单独的CSS文件。另外,变量和mixins都可以在主文件中引用。

  在一次import中,可以导入多个文件,之间使用逗号隔开。例如:  

@import "rounded-corners", "text-shadow"

  可以引入变量:

$family: unquote("Droid+Sans");
@import url("http://fonts.googleapis.com/css?family=#{$family}");

  编译后:  

@import url("http://fonts.googleapis.com/css?family=Droid+Sans");
时间: 2024-10-20 12:08:26

Sass 增强语法的样式表的相关文章

0811 css样式表基本

CSS(Cascading Style Sheets,层叠样式表),作用是美化HTML网页. /*注释*/    注释语法 1. 样式表分类 ①内联样式表 和html联合显示,控制精确,但是可重用性差,冗余多. 例:<p style="font-size:14px;">内联样式表</p> ②内嵌样式表 作为一个独立区域内嵌在网页里,必须写在head标签里边. <style type= "text/css"> p    //格式对p

Css3之基础-1 Css 概述、样式表使用方式、语法规范

一.CSS 概述 CSS概述 - CSS作用 CSS概念 - CSS (Cascading Style Sheets): 层叠样式表,又叫级联样式表,简称样式表 - 用于 HTML 文档中元素的样式定义 - 实现了将内容与表现分离 - 提高代码的可重用性和可维护性 CSS与HTML之间的关系 - HTML 用于构建网页的结构 - CSS 用于构建 HTML 元素的样式 - HTML 是页面的内容组成,CSS是页面的表现 HTML 属性与CSS样式的使用原则 - W3C 建议尽量使用CSS样式取代

4.2 样式表的基本语法

样式表由样式规则组成,这些规则告诉浏览器如何显示文档.一个样式(STYLE)的基本语法由3部分构成:selector(中文叫选择器,有点怪怪的,就用英文吧!),属性(property)和属性值(value). 本节单词记忆:标签 1.style 属性 1.class 2.font-size 3.font-family 网页学习网提示:html语言非常简单,不需要逻辑理解,而绝大部分朋友觉得它难以掌握,90%的原因在于英语单词不过关,所以每节记忆几个单词是非常有必要的. 一.样式表的基本结构 <S

Sass基础语法

Sass是CSS3语言的扩展,在CSS的基础之上添加了新特性和语法,能省事地写出更好的样式表.Sass引擎是基于Ruby的. 导入Sass文件: @import "colors" //colors.scss 注释: //这种注释不会出现在生成的css文件中 /*这种注释内容会出现在css文件中,当当出现在原生CSS不允许的未知,则这些注释会被抹掉*/ 变量>> -->变量声明 //注意:变量中下划线和中划线表示同一个变量$flower-color:#abcdef; /

如何使用 `PostCSS` 在样式表中处理图片

原文链接: https://css-tricks.com/images-in-postcss 本文摘自guest网Aleks Hudochenkov.Aleks 在这里给我们展示了POSTCSS在前端开发中,所擅长的领域. 也就是,越少的去用CSS.你即将看到各种与处理图像的PostCSS插件.最后,我敢肯定你能够想像POSTCSS在CSS中的重要性. 我们平时也一直在用CSS处理图片.但我们甚至可能没有意识到这一点,如果我们能替代手工操作的话,那很多事情就会容易很多 .我将为你展示很多POST

网站开发综合技术 第二部分 CSS样式表

第2部分 CSS样式表 CSS(Cascading Style Sheets,层叠样式表),作用是美化HTML网页. /*注释*/    注释语法 2.1.样式表的基本概念 2.1.1.样式表分类 1.内联样式表 和html联合显示,控制精确,但是可重用性差,冗余多. 例:<p style="font-size:14px;">内联样式表</p> 2.内嵌样式表 作为一个独立区域内嵌在网页里,必须写在head标签里边. <style type= "

通过Qt4.2样式表定制程序外观

通过Qt4.2样式表定制程序外观 1. 何为Qt样式表2. 样式表语法基础3. 方箱模型4. 前景与背景5. 创建可缩放样式6. 控制大小7. 处理伪状态8. 使用子部件定义微观样式 8.1. 相对定位    8.2. 绝对定位 摘要 由于Qt样式表的引入,定制Qt部件的外观样式变得非常简单. 无论你是想仅仅修改一个现有部件的外观,还是想从零开始设计一套全新的界面风格, 现在都有了一种新的方法而不必再去继承并实现一个QStyle的子类. 1. 何为Qt样式表 Qt 样式表的思想很大程度上是来自于

HTML基础(三)——css样式表

CSS(Cascading Style Sheet,叠层样式表),作用是美化HTML网页. /*注释区域*/此为注释语法 一.样式表 (一)样式表的分类 1.内联样式表 和HTML联合显示,控制精确,但是可重用性差,冗余较多. 例:<p style="font-size:14px;">内联样式表</p> 2.内嵌样式表 作为一个独立区域内嵌在网页里,必须写在head标签里面. <style type="text/css"> p  

HTML 样式表

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-