Menu
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

CSS 教程

CSS 主页 CSS 简介 CSS 语法 CSS 选择器 CSS 如何 CSS 注释 CSS 颜色 CSS 背景 CSS 边框 CSS 外边距 CSS 内边距 CSS 高度/宽度 CSS 盒模型 CSS 轮廓 CSS 文本 CSS 字体 CSS 图标 CSS 链接 CSS 列表 CSS 表格 CSS 显示 CSS 最大宽度 CSS 位置 CSS Z-index CSS 溢出 CSS 浮动 CSS 行内块 CSS 对齐 CSS 组合器 CSS 伪类 CSS 伪元素 CSS 透明度 CSS 导航栏 CSS 下拉菜单 CSS 图片库 CSS 图片精灵 CSS 属性选择器 CSS 表单 CSS 计数器 CSS 网站布局 CSS 单位 CSS 特定性 CSS !important CSS 数学函数

CSS 高级

CSS 圆角 CSS 边框图片 CSS 背景 CSS 颜色 CSS 颜色关键字 CSS 渐变 CSS 阴影 CSS 文本效果 CSS 网页字体 CSS 2D 变换 CSS 3D 变换 CSS 过渡 CSS 动画 CSS 工具提示 CSS 样式图片 CSS 图片反射 CSS object-fit CSS object-position CSS 遮罩 CSS 按钮 CSS 分页 CSS 多列 CSS 用户界面 CSS 变量 CSS @property CSS 盒模型大小 CSS 媒体查询 CSS 媒体查询示例 CSS Flexbox

CSS 响应式

RWD 简介 RWD 视口 RWD 网格视图 RWD 媒体查询 RWD 图片 RWD 视频 RWD 框架 RWD 模板

CSS 网格

网格简介 网格容器 网格项目

CSS SASS

SASS 教程

CSS 示例

CSS 模板 CSS 示例 CSS 编辑器 CSS 代码片段 CSS 测验 CSS 练习 CSS 网站 CSS 面试准备 CSS 集训营 CSS 证书

CSS 参考

CSS 参考 CSS 选择器 CSS 函数 CSS 参考听觉 CSS Web 安全字体 CSS 可动画 CSS 单位 CSS PX-EM 转换器 CSS 颜色 CSS 颜色值 CSS 默认值 CSS 浏览器支持

CSS 图片精灵


图片精灵

图片精灵是将多个图片组合成一个单一图片。

包含多个图片的网页加载时间可能很长,并会产生多个服务器请求。

使用图片精灵可以减少服务器请求次数并节省带宽。


图片精灵 - 简单示例

我们使用这一个图片("img_navsprites.gif"),而不是使用三个独立的图片。

navigation images

使用 CSS,我们可以只显示图片中我们需要的那部分。

在下面的示例中,CSS 指定了要显示的 "img_navsprites.gif" 图片的哪一部分。

示例

#home {
  width: 46px;
  height: 44px;
  background: url(img_navsprites.gif) 0 0;
}
试一试 »

示例说明

  • <img id="home" src="img_trans.gif"> - 仅定义了一个小的透明图片,因为 src 属性不能为空。显示的图片将是我们使用 CSS 指定的背景图片。
  • width: 46px; height: 44px; - 定义了我们要使用的图片部分。
  • background: url(img_navsprites.gif) 0 0; - 定义了背景图片及其位置(左 0px,上 0px)。

这是使用图片精灵的最简单方法,现在我们想通过使用链接和悬停效果来扩展它。


图片精灵 - 创建一个导航列表

我们想使用精灵图片("img_navsprites.gif")来创建一个导航列表。

我们将使用 HTML 列表,因为它可以是链接,也可以支持背景图片。

示例

#navlist {
  position: relative;
}

#navlist li {
  margin: 0;
  padding: 0;
  list-style: none;
  position: absolute;
  top: 0;
}

#navlist li, #navlist a {
  height: 44px;
  display: block;
}

#home {
  left: 0px;
  width: 46px;
  background: url('img_navsprites.gif') 0 0;
}

#prev {
  left: 63px;
  width: 43px;
  background: url('img_navsprites.gif') -47px 0;
}

#next {
  left: 129px;
  width: 43px;
  background: url('img_navsprites.gif') -91px 0;
}
试一试 »

示例说明

  • #navlist {position:relative;} - 位置设置为相对,以允许在其中进行绝对定位。
  • #navlist li {margin:0;padding:0;list-style:none;position:absolute;top:0;} - 外边距和内边距设置为 0,列表样式被删除,所有列表项都处于绝对定位。
  • #navlist li, #navlist a {height:44px;display:block;} - 所有图片的高度都是 44px。

现在开始为每个特定部分定位和设置样式。

  • #home {left:0px;width:46px;} - 定位在最左侧,图片宽度为 46px。
  • #home {background:url(img_navsprites.gif) 0 0;} - 定义了背景图片及其位置(左 0px,上 0px)。
  • #prev {left:63px;width:43px;} - 定位在右侧 63px(#home 宽度 46px 加上项目之间的一些额外空间),宽度为 43px。
  • #prev {background:url('img_navsprites.gif') -47px 0;} - 定义背景图片向右偏移 47px(#home 宽度为 46px + 1px 分隔线)
  • #next {left:129px;width:43px;} - 位置在右侧 129px 处(#prev 的开始位置为 63px + #prev 宽度 43px + 额外空间),宽度为 43px
  • #next {background:url('img_navsprites.gif') -91px 0;} - 定义背景图片向右偏移 91px(#home 宽度为 46px + 1px 分隔线 + #prev 宽度 43px + 1px 分隔线)


图像精灵 - 悬停效果

现在我们想要为导航列表添加一个悬停效果。

提示: :hover 选择器可以用于所有元素,而不仅仅是链接。

我们的新图片(“img_navsprites_hover.gif”)包含三个导航图片和三个用于悬停效果的图片。

navigation images

因为这是一个单一的图片,而不是六个独立的文件,所以当用户将鼠标悬停在图片上时,不会有加载延迟

我们只需要添加三行代码来添加悬停效果

示例

#home a:hover {
  background: url('img_navsprites_hover.gif') 0 -45px;
}

#prev a:hover {
  background: url('img_navsprites_hover.gif') -47px -45px;
}

#next a:hover {
  background: url('img_navsprites_hover.gif') -91px -45px;
}
试一试 »

示例说明

  • #home a:hover {background: url('img_navsprites_hover.gif') 0 -45px;} - 对于所有三个悬停图片,我们指定相同的背景位置,只是向下偏移 45px

×

Contact Sales

If you want to use W3Schools services as an educational institution, team or enterprise, send us an e-mail:
[email protected]

Report Error

If you want to report an error, or if you want to make a suggestion, send us an e-mail:
[email protected]

W3Schools is optimized for learning and training. Examples might be simplified to improve reading and learning. Tutorials, references, and examples are constantly reviewed to avoid errors, but we cannot warrant full correctness of all content. While using W3Schools, you agree to have read and accepted our terms of use, cookie and privacy policy.

Copyright 1999-2024 by Refsnes Data. All Rights Reserved. W3Schools is Powered by W3.CSS.