1、compass init 初始化一个compass项目,并创建一个images文件夹用来存放合成的sprite图

2、将切好的小图放到images文件夹中

3、在sass文件夹中新建一个test.scss的文件并写入

@import "test/*.png";       //导入小图片
@include all-test-sprites;   // 这是 compass 定义好的 mixin,一次全部生成 icons 这个文件夹里的所有图片的雪碧图

4、sass编译后会输出如下css

.test-sprite, .test-adv_food, .test-adv_taste, .test-adv_traffic, .test-adv_wifi, .test-hot_tags, .test-icon_100_31, .test-icon_hook, .test-icon_pos, .test-icon_wifi, .test-product_score { background-image: url('/images/test-s61f860e6f4.png'); background-repeat: no-repeat; }

.test-adv_food { background-position: 0 0; }

.test-adv_taste { background-position: 0 -48px; }

.test-adv_traffic { background-position: 0 -95px; }

.test-adv_wifi { background-position: 0 -138px; }

.test-hot_tags { background-position: 0 -186px; }

.test-icon_100_31 { background-position: 0 -208px; }

.test-icon_hook { background-position: 0 -239px; }

.test-icon_pos { background-position: 0 -255px; }

.test-icon_wifi { background-position: 0 -271px; }

.test-product_score { background-position: 0 -317px; }

其它配置:

1、输出布局,默认输出的雪碧图是按各个图片,垂直排列的。Compass 提供了: Vertical , Horizontal , Diagonal , Smart ,默认以 Vertical 输出。

$test-layout: smart; // {文件夹名称}-layout

2、控制间距,为每个图片加入间距,此处指定为10px

$test-spacing:10px

3、自动获取当前图片的尺寸

$test-sprite-dimensions:true;  //默认是false

4、手动指定类名

@import "test/*.png";
.wifi-test{                 //指定图片为icon_wifi的类名
    @include test-sprite(icon_wifi);
}

编译后生成的css代码

.test-sprite, .wifi-test { background-image: url('/images/test-s61f860e6f4.png'); background-repeat: no-repeat; }

.wifi-test { background-position: 0 -271px; }

compass sprite的更多相关文章

  1. 使用Sass和Compass组合写CSS

    最近开始在尝试开始使用Sass来写CSS代码,刚开始虽然还是不太习惯用链式的方式写css,不过这是暂时的阶段. 如果你还不了解Sass,可以看之前发表过的文章来了解详情,Sass主要有下面这几种特性( ...

  2. compass模块----Utilities----Sprites精灵图合图

    css雪碧图又叫css精灵或css sprite,是一种背景图片的拼合技术.使用css雪碧图,能够减少页面的请求数.降低图片占用的字节,以此来达到提升页面访问速度的目的.但是它也有令人诟病的地方,就是 ...

  3. Windows环境下使用Guard整合Compass和Livereload进行SASS的开发

    配置运行环境 Guard,Compass 和 Livereload 是 Ruby 的 Gem 套件,需要 Ruby 运行环境.另外还需要安装 Ruby 的扩展开发包 Development-Kit,以 ...

  4. requirejs + sass 实现的前端及 grunt 自动化构建

    对于 现在的 vue . react .webpack 来说也许有点旧了,有时候,越简单的技术越可靠,备份一下 module.exports = function(grunt) { // Projec ...

  5. 使用compass自动合并css雪碧图(css sprite)

    本文转载自: 使用compass自动合并css雪碧图(css sprite)

  6. compass框架的sprite雪碧图的用法简要

    ---恢复内容开始--- **简介** CSS SPRITE 即 CSS雪碧,即是将诸多图片合成一张图片,然后使用CSS 的background和background-position属性渲染. 这样 ...

  7. compass与css sprite(雪碧图)

    什么是css sprite? css sprite,中文叫雪碧图,也有人喊CSS精灵,就是一种背景拼合的技术,然后通过background-position来显示雪碧图中需要显示的图像. MDN相关链 ...

  8. compass制作sprite雪碧图

    1.安装compass.(需要先安装ruby) 命令行:gem install compass 2.新建一个compass 项目 命令行:compass create myproject 3.在myp ...

  9. compass Sprites 雪碧图 小图片合成[Sass和compass学习笔记]

    demo 源码 地址 https://github.com/qqqzhch/webfans 什么是雪碧图? CSS雪碧 即CSS Sprites,也有人叫它CSS精灵,是一种CSS图像合并技术,该方法 ...

随机推荐

  1. hdoj 1406 完数

    完数 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submissi ...

  2. poj 1149 PIGS【最大流经典建图】

    PIGS Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 18727   Accepted: 8508 Description ...

  3. Hibernate继承映射

    在面向对象的程序领域中,类与类之间是有继承关系的,例如Java世界中只需要extends关键字就可以确定这两个类的父子关系,但是在关系数据库的世界中,表与表之间没有任何关键字可以明确指明这两张表的父子 ...

  4. (8)Launcher3客制化之ContentProvider内容提供者,实现其它应用改动数据库更新等操作

    首先加入两个权限 <uses-permission android:name="com.android.launcher3.permission.READ_SETTINGS" ...

  5. 【S13】vector和string优先于动态分配的内存

    1.使用new动态分配内存,必须承担如下责任: a.使用delete释放内存: b.确保使用了正确的形式,delete与new的形式要匹配: c.不能重复delete. 2.使用vector和stri ...

  6. C++ ComboBox基础

    关键点 实现过程 //添加 //添加字符串 m_cbo1.AddString("AAA"); m_cbo1.AddString("BBB"); m_cbo1.A ...

  7. linux Page cache和buffer cache----- systemtap

    http://shixm.iteye.com/blog/1724718 http://blog.csdn.net/dianhuiren/article/details/7543886

  8. java查询手机号码归属地

    package com; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamRe ...

  9. Java基础知识强化之IO流笔记47:IO流练习之 随机获取文本文件中的姓名案例

    1.  随机获取文本文件中的姓名案例     需求:我有一个文本文件中存储了几个名称,请大家写一个程序实现随机获取一个人的名字.     分析:           A:  把文本文件中的数据存储到集 ...

  10. Android_layout_note

    LinearLayout线程布局 LinearLayout属性 android:orientation表示线性布局的方向 vertical: 垂直.从上往下 horizontal: 水平.从左往右 a ...