CSS Sprite (精灵图/雪碧图)

CSS Sprite

目录

应用场景

1.网页性能优化

  • 减少 HTTP 请求:在传统的网页中,如果有多个小图标或小图片,浏览器需要为每个图片单独发起一个 HTTP 请求。这会增加服务器的负载和页面的加载时间。使用 CSS 精灵图可以将这些小图片合并成一张大图,浏览器只需要发起一个 HTTP 请求来获取这张大图,从而显著减少了请求数量,加快了页面的加载速度
  • 节省带宽:精灵图在合并小图片时,可以对图片进行优化处理,减少图片的总体大小

2.用户交互场景

  • 实现图标切换效果:通过改变 CSS 的 background-position 属性,可以轻松实现图标的切换效果
  • 创建动画效果:结合 CSS 的 animation 属性和精灵图,可以创建简单的动画效果。通过不断改变 background-position 属性,让精灵图中的不同部分依次显示,从而形成动画效果

代码实现

1.目录结构

2.练习图片地址

emoji图片地址

3.代码

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>精灵图</title>
    <style>
        .container{
            width: 80px;
            height: 80px;
            outline: 1px solid #ccc;
            background: url(./img/emoji.jpg) no-repeat -130px -120px;
            /* background-position:-130px -120px; 合入background*/
        }
    </style>
</head>
<body>
    <div class="container"></div>
</body>
</html>

4.效果

相关推荐
李李李勃谦15 分钟前
鸿蒙PC配色方案工具:取色、配色生成与 CSS 导出
前端·css·华为·harmonyos
Jul1en_41 分钟前
Claude 迁移 Codex 工作流迁移与更新
java·服务器·前端·后端·ai编程
Heo43 分钟前
14_React 中的更新队列 updateQueue
前端·javascript·面试
前端 贾公子1 小时前
解决浏览器端 globalThis is not defined 报错
前端·javascript·vue.js
宁雨桥1 小时前
前端与AI结合实战分享
前端·人工智能
码农小河661 小时前
AI 一键生成 HTML/CSS/JS 静态网站【压缩包返回可直接提交】
css·人工智能·html
之歆1 小时前
DAY12_CSS3选择器全攻略 + 盒子新特性完全指南(下)
前端·javascript·css3
kyriewen111 小时前
代码写成一锅粥?3个设计模式让你的项目“起死回生”
开发语言·前端·javascript·设计模式·ecmascript
用户2367829801681 小时前
CSS 阴影生成器:从单层到多层叠加的艺术
css
光影少年1 小时前
react函数组件、类组件、纯组件、受控/非受控组件
前端·react.js·掘金·金石计划