css使用背景灵活展示雪碧图
雪碧图是把各种小图标集合在一起的png图片,通过background-position来展示雪碧图中不同位置的小图标,比如以下图片,在项目中要用到的小图标很多,如果每一个图标都作为一个png或者jpg图片,这样会增加非常多的网络请求,所以把很多小图片组合在一起是一个很不错的选择。
在用background-position来展示雪碧图之前,需要能熟练运用background(背景)属性,这里先简单介绍一下background如何使用。
background有非常多的属性,可以设置背景颜色、背景图片,而图片又能选择是否重复,以及摆放在哪个位置。
最简单的就是使用background-color设置背景颜色了,可以设置预定义的颜色,如:pink/red/blue/black,可以设置16进制颜色,如#000000,还可以设置rgb颜色,如rbg(0,0,0),还可以在此基础上增加透明度 rgba(0, 0, 0, .5),需要注意的是,透明度仅作用于背景,不影响盒子的其它内容,演示如下

当背景需要通过复杂的图案来进行填充时,我们可以借助于背景图片,使用background-image通过url来定义背景图片,比如设置一个小女孩的头像为背景

可以发现,背景图在盒子内被平铺了,这就是背景的第三个属性,background-repeat 当不设置的时候,默认是重复(repeat),需要定义为不平铺时,设置no-repeat即可
我们发现背景图片默认会在盒子的左上角,如果想要调整背景图片的显示位置,比较常见的情况是,使用背景图片和文字配合显示,文字和背景图片都需要居中显示,那此时就需要用到 background-position,可以使用方位名词,x轴使用top/center/bottom,y轴使用left/center/right,也可以通过百分比/像素来对背景图片进行移动,如果只写了一个方向的移动方式,那么另一个就默认为center。
以上属性可以合并在一起写
background: 颜色 图片 是否重叠 位置
// 以上居中显示 background: #000 url(./girl.png) no-repeat center
雪碧图的展示就是通过像素来对图片进行移动,比如上面的雪碧图中,选取耳机这个小图标来进行展示,在photoshop里打开雪碧图,使用矩形工具框出需要展示的图片,此时会展示属性信息,将这些属性分别设置到css样式中

上面选取的戴着耳机的小图标的宽度为65px,高度为50px,x轴的偏移量为0px,y轴的偏移量为80px,要注意的是,x轴和y轴的偏移量在定位时要取负值,因为找到小图标的位置之后,相当于要将整个雪碧图往上往左移,使得小图标的位置正好在原点处
.icon {
width: 65px;
height: 50px;
background: url(./res/sprite.png) no-repeat 0px -80px;
}
这样就能指定展示想要的图标了
css使用背景灵活展示雪碧图的更多相关文章
- CSS基础(滑动门,雪碧图,网页布局)
3.11.2017 这一篇主要是关于滑动门技术的学习,还有雪碧图(sprite),也就是精灵图,还有一点昨天的css可见性的回顾,下面先来回顾下吧 CSS可见性(元素可见性) overflow: hi ...
- css之background-position属性实现雪碧图
什么是雪碧图 雪碧图就是CSS Sprite,也有人叫它CSS精灵,是一种CSS图像合并技术,就是把多张小图标合并到一张图片上,然后用css的background-position来显示需要显示的部分 ...
- CSS 图像拼合技术(雪碧图)
1.css 图像拼合 图像拼合就是单个图像的集合. 有许多图像的网页可能需要很长的时间来加载和生成多个服务器的请求. 使用图像拼合会降低服务器的请求数量,并节省带宽. 代码如下: <!docty ...
- 微信小程序之雪碧图(css script)
今天有朋友问我关于微信小程序中如何在不占用大量网络带宽的情况下快速加载图片,我给他推荐了两种方式 1.雪碧图(css script),有过前端经验的朋友应该都有接触过. 2.懒加载. 由于时间关系我就 ...
- compass与css sprite(雪碧图)
什么是css sprite? css sprite,中文叫雪碧图,也有人喊CSS精灵,就是一种背景拼合的技术,然后通过background-position来显示雪碧图中需要显示的图像. MDN相关链 ...
- V4.0到来了,css雪碧图生成工具4.0更新啦
V3.0介绍 http://www.cnblogs.com/wang4517/p/4476758.html V4.0更新内容 V4.0下载地址:http://download.csdn.net/det ...
- webpack使用雪碧图插件
1.先安装插件 npm install --save-dev webpack-spritesmith 2.配置webpack 配置之前 先引入var SpritesmithPlugin = requi ...
- CSS中的背景、雪碧图、超链接的伪类样式
一.背景 1.背景颜色 background-color: red; 2.背景图片 background-image: url("../../img/l1.png"); 3.图片填 ...
- CSS入门(背景各种属性的详解、垂直居中和过渡效果的详解、渐变效果的简单讲解、雪碧图和精灵图)
一.各种背景属性 1.background-image 属性为元素设置背景图像. 元素的背景占据了元素的全部尺寸,包括内边距和边框,但不包括外边距. 默认地,背景图像位于元素的左上角,并在水平和垂直方 ...
- css背景雪碧图等
1.背景图 雪碧图技术 要设置背景,是要设置在某个盒子上 <!doctype html> <html lang="en"> <head> < ...
随机推荐
- Java8 Stream流的合并
最近的需求里有这样一个场景,要校验一个集合中每个对象的多个Id的有效性.比如一个Customer对象,有3个Id:id1,id2,id3,要把这些Id全部取出来,然后去数据库里查询它是否存在. @Da ...
- jdk环境配置已经版本切换
下载安装jdk到电脑盘,两个版本要下载到一个盘里面下安装好后右击我的电脑 找到高级系统设置,点开环境变量 新建环境变量 总计环境变量一共添加四个其中 java8和java11是是选择文件路径 JAVA ...
- 程序员IT行业,外行眼里高收入人群,内行人里的卷王
程序员 一词,在我眼里其实是贬义词.因为我的其他不是这行的亲朋友好友,你和他们说,你是一名程序员· 他们 第一刻板影响就是,秃头,肥胖,宅男,油腻,不修边幅 反正给人一种不干净,不好形象,,,,不知道 ...
- 2022-11-22:小美将要期中考试,有n道题,对于第i道题, 小美有pi的几率做对,获得ai的分值,还有(1-pi)的概率做错,得0分。 小美总分是每道题获得的分数。 小美不甘于此,决定突击复习,
2022-11-22:小美将要期中考试,有n道题,对于第i道题, 小美有pi的几率做对,获得ai的分值,还有(1-pi)的概率做错,得0分. 小美总分是每道题获得的分数. 小美不甘于此,决定突击复习, ...
- 2022-03-04:爱吃香蕉的珂珂。 珂珂喜欢吃香蕉。这里有 N 堆香蕉,第 i 堆中有 piles[i] 根香蕉。警卫已经离开了,将在 H 小时后回来。 珂珂可以决定她吃香蕉的速度 K (单位:根
2022-03-04:爱吃香蕉的珂珂. 珂珂喜欢吃香蕉.这里有 N 堆香蕉,第 i 堆中有 piles[i] 根香蕉.警卫已经离开了,将在 H 小时后回来. 珂珂可以决定她吃香蕉的速度 K (单位:根 ...
- npm install报错node-sass@7.0.1 postinstall: `node scripts/build.js`
在控制台执行 即可 npm config set sass_binary_site=https://npm.taobao.org/mirrors/node-sass
- PTA L1-064 估值一亿的AI核心代码
PTA L1-064 估值一亿的AI核心代码 有坑!不少 题目链接 题目及分析 题目: 本题要求你实现一个稍微更值钱一点的 AI 英文问答程序,规则是: 1. 无论用户说什么,首先把对方说 ...
- JS加载机制
做开发多年后发现自己思维任然只定位在功能的实现:忽略了很多代码最终的实现,加载机制等 那我们接下来就借助几篇博客来理理天天看见的js:理理他究竟是怎么过执行的 一.代码检测 首先浏览器会对所有js 进 ...
- Oracle Linux切换uek内核到rhck内核解决ACFS兼容问题
背景:协助客户做验证,客户使用的是RHEL7.6环境,我这边是OEL7.6环境,开始以为区别不大,结果acfs兼容还是遇到问题,特此记录下. 现象:asmca图形没有acfs相关内容,无法使用acfs ...
- 为什么要学习 Markdown?究竟有什么用?
点击上方蓝字设为星标 下面开始今天的学习- 本文经授权转载自微信公众号:杰哥的 IT 之旅(ID:Jake_Internet),未经许可,禁止二次转载. 一.什么是 Markdown? Markdow ...