7 设置元素的背景及雪碧(精灵)图使用

1 设置元素的背景及雪碧图使用

1.1 背景颜色background-color

    background-color属性用来为元素设置背景颜色。需要指定一个颜色值,当指定了一个颜色以后,整个元素的可见区域都会使用这个颜色作为背景色。如果不设置背景颜色,元素默认背景颜色为透明,实际上会显示父元素的背景颜色。

background-color: red;

1.2 背景图片background-image

     background-image可以为元素指定背景图片 和background-color类似,这不过这里使用的是一个图片作为背景。需要一个url地址作为参数,url地址需要指向一个外部图片的路径,相对路径写在那就相对于那个文件。

background-image: url(1.jpg);

特点:

     (1)如果图片大于内容区,则会显示图片的最上角

     (2)如果图片和内容区一样大,则背景图片则会充满整个文件。

     (3)如果图片小于内容区大小,则会默认让图片平铺充满内容区

     (4)可以同时制定背景颜色和背景图片,这样背景颜色会作为背景图片的底色。一般情况下设置背景图片时同时都会指定一个背景颜色。

1.3 背景图片的重复方式background-repeat

    background-repeat用于控制背景图片的重复方式。如果只设置背景图片默认背景图片将会使用平铺的方式,可以通过该属性进行修改。

    可选值:
        – repeat:默认值,图片左右上下平铺
        – no-repeat:只显示图片一次,不会平铺,有多大就显示多大
        – repeat-x:沿x轴水平平铺一张图片
        – repeat-y:沿y轴水平平铺一张图片

background-repeat:no-repeat;

1.4 背景图片定位

 background-position用来精确控制背景图片在元素中的位置。可以通过三种方式来确定图片在水平方向和垂直方向的起点。

可选值:

    – 关键字:top right bottom left center(可以使用其中至少两个值来指定图片的位置,如果只指定一个值,则第二个值默认为center)

background-position: center center


    – 百分比

background-position: 10% 10%;


    – 数值(可以指定两个偏移量,第一个值为水平偏移量,第二个值为垂直偏移量,内容区左上角坐标为(0,0),可以指定负值,超过内容区部分则不会显示)

background-position: 100px 100px;

1.5 设置背景图片是否随页面滚动 background-attachment

    background-attachment用来设置背景图片是否随页面滚动.

    可选值:
        – scroll:随页面滚动,默认值
        – fixed:不随页面滚动,会固定在页面的某一个位置(当背景图片设置为fixed,背景图片永远相对于浏览器的窗口,一般不随窗口滚动的背景图片,一般都设置给body,不设置给其他元素)

1.7 设置背景的渲染的起始位置background-origin

    可选值

        – border-box       从border开始渲染
        – padding-box    从padding开始渲染,默认值
        – content-box     从content开始渲染

1.8 设置背景裁剪位置background-clip

    可选值

        – border-box       从border开始剪裁,默认值
        – padding-box    从padding开始剪裁
        – content-box     从content开始剪裁

    特殊:该属性只在谷歌浏览器中有效

-webkit-background-clip: text;

示例:

	<head>
		<meta charset="UTF-8">
		<title>按文本截背景</title>
		<style type="text/css">
			.box1{
				width: 200px;
				height: 100px;
				color: rgba(255,255,255,0.2);
				font: bold 40px "微软雅黑";
				background: transparent url(img/1.jpg) no-repeat center center;
				-webkit-background-clip: text;
			}
		</style>
	</head>
	<body>
		<div class="box1">你好啊</div>
	</body>

效果:

IE中效果:

1.9 背景的简写background

background是背景的简写属性,通过这个属性可以一次性设置多个样式,而且样式的顺序没有要求,也没有数量的要求,不写的属性就设置默认值。

语法:

background: green url(1.jpg) no-repeat center center fixed;

2 雪碧(精灵)图使用

通过背景图片的定位可以实现雪碧图/精灵图片的使用。

示例:

    使用如下精灵图片设置图标

	<head>
		<meta charset="UTF-8">
		<title>精灵图片</title>
		<style type="text/css">
			.icon{
                width: 81px;
				height: 81px;
				display: inline-block;
			}
			
			.icon-view{
				background: transparent url(view.png) no-repeat;
			}
			
			.icon-pay{
				background: transparent url(view.png) no-repeat -81px 0px;
			}
		</style>
	</head>
	<body>
		<i class="icon icon-view"></i>
		<i class="icon icon-pay"></i>
	</body>

 

效果:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
在Cesium中,可以使用雪碧(Sprite)来实现贴效果。雪碧是一种将多个小标合并到一张大上的技术,通过指定不同的纹理坐标来显示不同的标。 要在Cesium中使用雪碧,可以按照以下步骤进行操作: 1. 创建自定义的Geometry形状,并指定贴规则。可以使用Cesium的Geometry和GeometryInstance来创建自定义的几何体,并使用Material来指定贴规则。 2. 将片作为材质贴到自己的Geometry上。可以使用Cesium的TextureAtlas类来加载雪碧,并将其作为材质贴到自定义的Geometry上。 3. 通过primitives加载自定义的Geometry。可以使用Cesium的Primitive和PrimitiveCollection来加载自定义的Geometry,并将其添加到场景中。 4. 可以通过更换appearance实现动态切换片。可以使用Cesium的Appearance类来定义几何体的外观,并通过更换材质贴来实现动态切换片的效果。 以下是一个使用雪碧的示例代码: ```javascript // 创建自定义的Geometry形状 var geometry = new Cesium.Geometry({ // ... 定义几何体的顶点信息 }); // 指定贴规则 var material = new Cesium.Material({ // ... 定义贴规则 }); // 将片作为材质贴到自己的Geometry上 var textureAtlas = new Cesium.TextureAtlas({ // ... 加载雪碧 }); material.setTextureAtlas(textureAtlas); // 创建自定义的GeometryInstance var geometryInstance = new Cesium.GeometryInstance({ geometry: geometry, attributes: { // ... 定义几何体的属性信息 }, id: 'customGeometry' }); // 创建Primitive并添加到场景中 var primitive = new Cesium.Primitive({ geometryInstances: [geometryInstance], appearance: new Cesium.Appearance({ material: material }) }); scene.primitives.add(primitive); // 动态切换片 function changeTexture() { var newTexture = new Cesium.TextureAtlas({ // ... 加载新的雪碧 }); material.setTextureAtlas(newTexture); } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

丨Anna丨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值