fis-spriter-csssprites
基于FIS的csssprites,对css文件,以及html文件css片段进行csssprites处理。支持repeat-x
, repeat-y
, background-position
和 background-size
使用
FIS 内置
环境要求
- 依赖native插件,images 环境需要符合这个插件的要求。(OS X、Windows、Linux x86 提供了二进制包)
- 只能在FIS中使用
配置
-
首先要配置FIS中使用csssprites
fisconfig; -
合并后的css 文件会 自动 进行csssprites
fisconfig; -
如果有个别css文件没有合并,但是想进行csssprites处理,可以像下面这样配置
fisconfig; -
如果想配置html中的css片段进行csssprites处理,可以像下面这样配置
fisconfig; -
background-size
background-size
只支持图片同倍率缩小或者放大;scale < 1
缩小,scale > 1
放大;其配置如下,当设置scale
时,不需要给每一个规则都写上background-size
,csssprites会根据scale产出正确的结果。注意: 当写像素时,必须两个大小同时写才能识别。如
background-size:10px 15px
- 支持情况
- 不支持跟
background-repeat
一起用。 - 设置了
scale
,则规则不允许写background-size
。
- 不支持跟
fisconfig - 支持情况
-
csssprites其他设置
fisconfig;
以上设置可以按照需求任意组合
使用
调用执行spriter,需要fis release
时加-p
参数: fis release -p
,具体请参照文档
在书写css时标注background-image
的图片是否进行合并,标注说明;
通过图片添加query识别图片是否需要做图片合并,具体
query | 说明 |
---|---|
?__sprite | 标识图片要做合并 |
支持图片的background-position:有的情况下引用的图片已经是合并了几个小图的图片,通过background-position
来显示每个小图,这种情况也是支持的。
支持以下几种background-position
,有的同学不知道background-position
是如何工作的,请参见MDN
支持写法 | 示例 | 使用场景 |
---|---|---|
background-position: \d+px \d+px; | background-position: -9px -1px; | 需要合并的图是一个合并了很多小图的图片 |
background-position: left \d+px; | background-position: left -11px; | 需要合并的图片向左浮动 |
background-position: right \d+px; | background-position: right -1px; | 需要合并的图片向右浮动 |
background-position: left top; | background-position: left top; | 需要合并的图片向左浮动 |
background-position: right top; | background-position: right top; | 需要合并的图片向右浮动 |
示例
源代码: aio.css
产出结果:
如上,1px_bg.png
会合并到aio_x.png
(aio.css对应图片), nav_bg.png
合并到aio_y.png
, add.jpg
和mul.jpg
被合并到aio_z.png
。