css sprite概念是什么?

html-css07

css sprite概念是什么?,第1张

1.CSSSprites在国内很多人叫css精灵,是一种网页图片应用处理方式。它允许你将一个页面涉及到的所有零星图片都包含到一张大图中去,这样一来,当访问该页面时,载入的图片就不会像以前那样一幅一幅地慢慢显示出来了。

下面我给出了一个概念图,你可以参考一下。

说到底还就是通过某些手段把许多小图片给塞入一张大图中,这样做的好处就是在加载网页的时候就只需要加载一次——就是咱们上面说的大图。

2.手段:运用了css中的background-position,这是css中的一个属性。意思是调整css盒子中的背景图片的位置.

3.代码示例:

.d1{background-position:0px 0px}

此代码意思是id名为test1的背景图片的位置为坐标原点的0位置,即默认位置

d2{background-position:50px 50px}

此代码的意思是id名为test2的背景图片的位置为原点位置(默认位置)的上下左右位置的50像素距离处。

4.关于代码和属性的解释可以参考“css手册”。

CSS sprites是指把网页中很多小图片(很多图标文件)做成按规律排列的一张大图上,在显示的时候通过background-image、background-position显示图片特定部分达到和分散的一张张小图片一样的效果。

作用:

作用:background-size设置 背景图像的大小尺寸

一、margin和width实现水平居中

优点: 实现方法简单易懂,浏览器兼容性强;

缺点: 扩展性差,只能针对已知宽度的div,无法自适应未知项情况。

)

二、inline-block实现水平居中方法

做点: 简单易懂,扩展性强;

缺点: 需要额外处理inline-block的浏览器兼容性。

1)、opacity作用于元素以及元素内的 所有内容的透明度 ,子元素会继承父元素的 opacity 属性。

2)、rgba()只作用于元素的颜色或其背景色,后代元素不会继承透明性,只是针对自己本身有效,无法使内部的所有元素透明。

二、csssprite 的优缺点

优点:1.减少了网页的http的请求,提高了网页性能。原理很简单,没有运用csssprite这种技术时,网页可能要加载十二个icons,但当运用了这种技术之后,十二个icons全部放在一个background-image内了。当我们加载网页的时候就只需要加载一个background-image就可以了。

2.” CSS Sprites能减少图片的字节,曾经比较过多次3张图片合并成1张图片的字节总是小于这3张图片的字节总和。“——源自<博客园>的“沫鱼的前端世界”。

缺点:1.首先一点是维护麻烦,当我们需要的十二个icons需要换其中几个或者增加或删除几个的时候,可能需要重新排版。当修改的icon与之前的不一致时则更几乎是要重新排版的。所以在这一点上,csssprite并不容易维护。不过一般人们运用这种技术的前提是设计的css盒子能够保证在相当长的一段时间内不会改变的。

2.开发时,在自适应属性下,csssprite可能会因为图片大小等属性的各种原因而导致图片出现断裂情况使得设计的页面效果十分难看。

3.同样是开发时,在设计页面的时候,运用csssprite技术需要用Photoshop去精准的定位到图片的长度,操作不难但是比较繁琐。