Sprite生成CSS和4自动化工具

ss图例生成

Sprite一代是什么

Sprites是提高用户经验的重要方法网站性能减少网络管理量和网页下载文件数sprite为单图像集浏览器下载单图象,CSS代码为浏览器提供图文中图像坐标,允许单独显示

文章中:

CSSsprites为何使用

贝斯特登录入口官网下载ss图案是减少HTTP请求数的一个方法 即图像资源由网站引用图像合并成大图像, 单个图像定义 X和Y坐标后台位置CSS属性移动视图港到期望组件图像

技术非常有效提高网站性能,特别是小图像,如菜单图标

CSS图例使用的唯一反面是,它们不在所有浏览器中持续工作具体地说,它们得到了Chrome和Firefox的大力支持,而老版InternetExplorer和Opera支持则较为有限。不需要支持老浏览器时,您可以为大多数现代浏览器提供交叉浏览器兼容性,只有几处CSS修改

相关内容:阅读指南网站速度

Sprite应该是横向还是垂直

sprite不必横向或垂直有可能将图文压缩成网格以尽可能小图像维度影响内存使用时消耗量, 大小越小越好选择布局自定义图案时,可使用Sprite牛帮助生成CSS代码

可选择单维简单化问题不在于选择水平或垂直维度,而在于最大图像尺寸

举例说,考虑最大高度和宽度图像文件以确定哪个最大高度维度大时,应垂直排列图表,但如果宽度大时应横向排列图表使用图文生成工具时,它有可能自动实现此操作。

在某些例子中,你可能想用图例对角法用图例,以便能够在宽度或高度未知的区域使用图例。

CSS手动执行图像布局

ss提供简单方法执行图像图案技术用多小图像编组网格制作可设置图像为CSS类背景

举个例子,考虑此.ics类,它有图像图标.png作为后台图像有图标排列 30x30px

.icos {后台:url/ics.png显示内屏蔽高度:30px宽度: 30px}

现在我们定义二大元素ID图标1和图标2(元素需要分配图标类)。

后台位置属性移动图标.png图像显示正确图标对一图标,我们设置后台位置(-300),对二图标则设置位置(-600)。以这种方式,您可以处理图例中多图标或其它图像

#icon1{后台位置:-30px0#icon2{后台位置:-60px0}

也可以设置悬停位置举个例子,如果想显示网格中第三个图标(加偏-90px),图标1元素悬停时,可使用这样的代码:

icon1:hover{后台位置:-90px0}

生成sprite使用自动化工具

其中一些工具可用于自动图案生成

Sprity基础

使用Grunt、Gulp或节点生成图文时,可调用sprity基础节点包,用于从图像集群创建图例Sprity提供多项特征,包括:

  • pg、PNG或DataURI输出格式化
  • CSS、Sass、Stylus和LESS样式表生成

在所有系统安装CCS-Sprite使用命令行脚本编译图例

$npm安装sprity-g

创建图文和对应样式表

prity./输出指令/./输入指令/*.png

指南针

使用 Compass生成图例需要多几步配置和维护objects使用后,它可能与您的固定工作流相融合

优先在图像目录中创建子目录-它必须在标注为simages工作目录内按图案类型命名举个例子,如果选择生成标志图例,您可以命名目录“glaps ” 。确认转换成图例的图像使用PNG格式后再放入新目录

创建新SCSS文件并配有对应名称,例如对标志图例使用“flags.scss”。下行导入指南针创建工具,导入PNG文件转换并生成所有图例CSS代码

@import "compass/utilities/sprites";

导入flaps/*.png

内含全旗sprites

注意命令顺序很重要句子中中间字后加 @cluce必须匹配前目录名@import语句

相对简单使用此进程生成图文,但也有缺陷,包括生成的CSS缺少高度和宽度sprites没有共享类,所以它应用背景图像到每个类

图像Magick

可使用图像Magick使用这些命令通过命令行创建图案表

转换*.png-附图.png#垂直附加

转换*.png+附录图例.png#横向附加

命令共生所有PNGs-Glob选择生成单文件方法不生成对应样式表

云化

贝斯特游戏大厅官网入口可云化程序媒体是一种云基图像管理解决方案,可慷慨免费规划一组图像上传云性并自动生成常用标签并生成图案图像和相应的CSS文件

云形工具与上文覆盖的其他工具之差在于云形从端到端处理整个过程允许上传图像定义图例并快速传送到用户

步骤1:上传图像

创建免费账户上传图像并分配标签使用云管理控制台或上传API

举个例子,你可以上传企业标识到云形并给他们标签spritelogo

步骤2:自动生成图案

sprite和对应CSS代码自动生成时提供动态sprite URL,

https://res.www.aaaalireno.com/demo/image/sprite/sprite_logo.png

单行代码首次访问时按需生成sprite

上传四大标识与公共标识账号:amazon-logo、apple_logo、micosoft_logo和gogle_logo并分配标签sprite_logo上方URL生成下列图像

步骤3:向HTML页面添加CSS代码

要使用HTML代码中的图文,你需要引用生成的CSS图文,该图文有与图文图像相同的URL,但使用.cs扩展件,像:

s/res.cloudiary.com/demo/image/sprite/logo.csss.aple_logo.aczon_logo{后台位置:0px0宽度: 162px高度:38px.apple_logo{后台位置:0px-40px宽度: 206px高度:250pxgleo_logo{后台位置:0px-292px宽度: 275px高度:95px微软logo{后台位置:0px-389px宽度216高度:70px}

生成的CSS和PNG文件通过CDN自动分布并智能缓存注意图象和css如果不存在则会生成, 无论是访问'.png' URL或'.cs' URL

步骤4:显示图文中的具体图像

显示图文图像,页面中包括CSS并使用相关样式类名例子显示亚马逊标识使用以下HTML代码

             ..
             

Baidu
map