06-CSS背景和精灵图

html-css016

06-CSS背景和精灵图,第1张

1.如何设置标签的背景颜色?

1.如何设置背景图片?

注意点:

1.如何控制背景图片的平铺方式?

应用场景:可以通过背景图片的平铺来降低图片的大小, 提升网页的访问速度

1.如何控制背景图片的位置?

注意点:同一个标签可以同时设置背景颜色和背景图片, 如果颜色和图片同时存在, 那么图片会覆盖颜色

1.背景属性缩写的格式

2.注意点:background属性中, 任何一个属性都可以被省略

3.什么是背景关联方式?

4.如何修改背景关联方式?

1.背景图片和插入图片区别?

1.什么是CSS精灵图

CSS精灵图是一种 图像合成技术

2.CSS精灵图作用

可以减少请求的次数, 以及可以降低服务器处理压力

3.如何使用CSS精灵图

CSS的精灵图需要配合背景图片和背景定位来使用

css2.1中,颜色的表示方法有三种:(1)单词;(2)rgb表示法(十进制表示法);(3)十六进制表示法。

能够用英语单词来表述的颜色,都是简单颜色。

红色:background-color: red

红色:background-color:rgb(255,0,0);

rgb(red、green、blue)表示三原色“红”“绿”“蓝”。光学显示器,每个像素都是由三原色的发光原件组成的,靠明亮度不同调成不同的颜色。

用逗号隔开r,g,b的值,每个值的取值范围是0~255,一共256个值。

如果此项的值是255,那么就说明是纯色:

绿色:background-color:rgb(0,255,0)

蓝色:background-color:rgb(0,0,255)

黑色:background-color:rgb(0,0,0)

白色:background-color:rgb(255,255,255)

颜色可以叠加,比如黄色就是红色和黄色的叠加:

黄色:background-color:rgb(255,255,0)

紫色:background-color:rgb(255,0,255)

青色:background-color:rgb(0,255,255)

红色:background-color:#ff0000;

所有用#开头的值,都是16进制的。

#ff0000(ff表示r,00表示g,00表示b)

16进制表示法和rgb类似,也是两位两位的看,但是没有逗号隔开。

上述红色表示法中:ff就是10进制的255,00就是十进制的0,所以#ff0000相当于(255,0,0)

十六进制对照表:

任何一种十六进制表示法都能够换算成rgb表示法。也就是说,两个表示法能表示的颜色数量一样多,十六进制能够简化成3位,所有#rrggbb的形式,都可以写成#rgb;

比如,上述的红色可以写成background-color:#f00;

但是,如果要采用简化的方法,必须满足rrggbb格式才行。

几个特殊的要记住:

黑:#000

白:#fff

红:#f00

灰:#333

深灰:#222

浅灰:#ccc

background-image属性用于给盒子加上背景图片:

background-image:url(images/1.jpg)

url()表示网址。、

images/1.jpg就是相对路径。

背景会默认循环,平铺满整个盒子,padding的区域也会有背景图。

background-repeat属性用来设置背景图是否重复以及重复方式。

“repeat”表示“重复”。

默认为铺满,不用设置。

不重复:background-repeat:no-repeat;

横向重复:background-repeat:repeat-x;

纵向重复:background-repeat:repeat-y;

background-position:背景定位属性。

格式:background-position:向右移动量(100px) 向下移动量(200px)

向上向左移只需把移动量改成负数即可。

css精灵又叫“css雪碧”技术,是一种css图像拼合技术,该方法是将小图标和图像合并到一张图上,然后利用css背景定位来显示需要显示的图片部分。

css精灵的优点,就是减少了http请求。比如4张小图片,原本需要4个http请求。但是用了css精灵,小图片变为了一张图,http请求只有1个了。

background-position:描述左右的词 描述上下的词;

比如:background-position:right bottom:(右下角)

background-position:center center;(居中)

背景固定属性。

格式:background-attachment:fixed;

背景就会被固定住,不会被滚动条滚走。

background属性和border一样,是一个综合属性:

background:red url(1.jpg) no-repeat 100px 100px fixed;

等价于:

background-color:red;

background-image:url(1.jpg);

background-repeat:no-repeat;

background-position:100px 100px;

background-attachment:fixed;

可以任意省略部分:

background:red;

这种做法叫做css精灵,CSS Sprites,或者集合图片法。

原理:

原理就是把所有图片(前提是图片较小)都集合在一张图中,然后利用css样式中的background-position属性来准确定位到位置。

优点:

可以减少http请求,提高性能,本来四张图片要请求四次,现在一次搞定。

缺点:

就是处理起来比较麻烦,需要改动其中一个就要改整个图。

需要用ps先定位好每个图片的位置。

对html容器也有较高的要求,宽高都对背景会有依赖。

所以建议在比较稳定的页面,不需要经常改动的地方用css精灵的方法,如果需求经常变动,我觉得直接用单图也可以。