iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >CSS Sprite从大图中截取小图的方法
  • 267
分享到

CSS Sprite从大图中截取小图的方法

2024-04-02 19:04:59 267人浏览 安东尼
摘要

本文小编为大家详细介绍“CSS Sprite从大图中截取小图的方法”,内容详细,步骤清晰,细节处理妥当,希望这篇“CSS Sprite从大图中截取小图的方法”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深

本文小编为大家详细介绍“CSS Sprite从大图中截取小图的方法”,内容详细,步骤清晰,细节处理妥当,希望这篇“CSS Sprite从大图中截取小图的方法”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

按钮是用来实现功能的,一般是用超链接响应单击事件,但是不能把背景图直接加在超链接上,那样就不叫样式啦,因为超链接的文本长度变化时,样式也变了。

地球人一般的做法是,div里边套一个超链接,超链接负责实现功能,div负责装载背景图。html结构如下:

复制代码

代码如下:

<div class="btn">
<a href="<a href="Http://www.jb51.net">+1</a">http://www.jb51.net">+1</a</a>>
</div>

有了html骨架,接下来就要写css样式啦。

假如我们什么都不考虑,直接把整张图片设为背景,样式如下:

复制代码

代码如下:

.btn{
background:url(bg.png);
}

div是块级元素,默认是占一行的,这个先不用关心,但看到背景图重复了,这显然不是我们想要的,加上background-repeat:no-repeat;属性,改进样式如下:

复制代码

代码如下:

.btn{
background:url(bg.png);
background-repeat:no-repeat;
}

这样就不重复了。

div可以理解成一个矩形框,它的左上角是顶点,背景图片的顶点也是左上角,div加载背景图时,会把两个顶点重合,顶点的坐标是(0,0)。不理解的看图,很简单的。。。

CSS Sprite从大图中截取小图的方法

+1的小图片混杂在大图中,想提取出来,需要用background-position属性,这个属性相当于大图片不动,把div的顶点进行移动,移动到目标小图的顶点位置,如下图:

CSS Sprite从大图中截取小图的方法

这样一来,div中显示的就是小图了,但是,显示的还不仅仅是小图,而是图中阴影部分,怎么办呢?设置一下div的宽、高,让它和小图的宽、高一样就可以了呗!!

再来看看background-position属性,它有两个参数,分别是水平方向移动的像素、竖直方向移动的像素,都用负数表示。大图不动,div移动,也只能是向右、向下移动,只要记住这两个方向移动的像素都用负数表示就行了!

因此,只要找到小图相对于大图左上角顶点的水平移动像素、竖直移动像素就可以了。小菜也不用什么专业工具,用截图就很方便,从大图左上角顶点开始截,到小图顶点那停下来,一看像素就差不多了,然后再调试调试,基本就搞定。

在本例中,A小图的位移是:-25px -374px,A小图尺寸是:24px 16px。因此,css样式如下:

复制代码

代码如下:

.btn{
background:url(bg.png);
background-repeat:no-repeat;
background-position:-25px -374px;
height:16px;
width:24px;
}

这样就算是把小图抠出来啦!简单吧!!

先解释个问题,图片上有+1,而我又在超链上写了一个+1,这是因为很多时候文本内容不是写在图片上的,那样灵活性太差,文本就是文本,小菜为了给大家一个完整的演示,因此又写了一个+1,接下来就处理它!

先把+1居中,居中分为水平居中和垂直居中,水平居中超链接,需要在div上设置text-align:center;,这个属性是对子节点而言的;垂直居中div中的超链接,只需要把a标签的line-height属性设成和div的高度一样即可。样式如下:

复制代码

代码如下:

.btn{
background:url(bg.png);
background-repeat:no-repeat;
background-position:-25px -374px;
height:16px;
width:24px;
text-align:center;
}
.btn a{
line-height:16px;
}

接下来呢,还有问题,我们可以发现,只有当鼠标移到+1文本上时,鼠标才会变成手型,才能响应事件。

这显然不是我们想要的,应该是鼠标移入图片时,确切的说是鼠标移入div时,就可以变成手型,也能响应事件。

这也简单,只需要在a标签(超链接)上加display:block;属性即可。

另外这个下划线比较碍眼,用text-decoration:none;属性去掉,很常见,就不多说了。

样式如下:

复制代码

代码如下:

.btn{
background:url(bg.png);
background-repeat:no-repeat;
background-position:-25px -374px;
height:16px;
width:24px;
text-align:center;
}
.btn a{
line-height:16px;
display:block;
text-decoration:none;
}

接下来就剩最后一件事了,那就是鼠标移入的时候切换背景。

本例是div里边套a标签,鼠标移入换背景,当然是指鼠标移入div,而且换背景也是换div的背景,可不是a标签的哦!!

因此要在div标签上调用hover,div的样式是btn,因此写成.btn:hover{}。

换背景还需要找到背景图片,这又需要抠小图了,也就是抠上边指出的B图。

刚刚显示的是A小图,B小图和A小图在同一水平线上,因此竖直方向的移动像素是相同的,水平方向差不就是A小图的水平像素加上A小图的宽度。

经过测试,B小图的位移是:-50px -374px,尺寸大小就不用关心了,肯定和A小图一样,不一样就没法做了。

把B小图的定位background-position:-50px -374px;放在.btn:hover{}里即可。

样式如下:

复制代码

代码如下:

.btn{
background:url(bg.png);
background-repeat:no-repeat;
background-position:-25px -374px;
height:16px;
width:24px;
text-align:center;
}
.btn a{
line-height:16px;
display:block;
text-decoration:none;
}
.btn:hover{
background-position:-50px -374px;
}

读到这里,这篇“CSS Sprite从大图中截取小图的方法”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注编程网JavaScript频道。

--结束END--

本文标题: CSS Sprite从大图中截取小图的方法

本文链接: https://www.lsjlt.com/news/93183.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • CSS Sprite从大图中截取小图的方法
    本文小编为大家详细介绍“CSS Sprite从大图中截取小图的方法”,内容详细,步骤清晰,细节处理妥当,希望这篇“CSS Sprite从大图中截取小图的方法”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深...
    99+
    2024-04-02
  • CSS Sprite从大图中截取小图的过程
    这篇文章主要讲解了“CSS Sprite从大图中截取小图的过程”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“CSS Sprite从大图中截取小图的过程”吧!...
    99+
    2024-04-02
  • css从png里截取小图标的方法
    这篇文章将为大家详细讲解有关css从png里截取小图标的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。css从png里截取小图标的方法:首先使用background属性引入png图片,使用no-rep...
    99+
    2023-06-15
  • css中设置图片大小的方法
    这篇文章主要介绍了css中设置图片大小的方法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。在css中,可以使用width和height属性来设置图片大小;只需要给img图片元...
    99+
    2023-06-14
  • css设置背景图片大小的方法
    小编给大家分享一下css设置背景图片大小的方法,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!在css中,可以使用background-size属性来设置背景图片的大小;语法格式为“background-size:lengt...
    99+
    2023-06-14
  • Unity 从Resources中动态加载Sprite图片的操作
    我就废话不多说了,大家还是直接看代码吧~ public Sprite LoadSourceSprite(string relativePath) { ...
    99+
    2024-04-02
  • 如何使用Stretchblt获取调整位图图像大小的方法
    使用StretchBlt函数可以调整位图图像的大小。以下是使用StretchBlt函数的步骤:1. 创建源位图和目标位图的设备上下文...
    99+
    2023-09-26
    Stretchblt
  • Python-获取图片的大小
    了解过Pillow的都知道,Pillow是一个非常强大的图片处理器,这篇文章主要记录一下Pillow对图片信息的获取: 安装Pillow pip install pillow 本地图片 import os from PIL imp...
    99+
    2023-01-31
    大小 图片 Python
  • JavaScript设置图片大小的方法
    本篇内容介绍了“JavaScript设置图片大小的方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! ...
    99+
    2024-04-02
  • ps调整图片大小的方法
    ps调整图片大小的方法:1、使用图像大小工具,在菜单栏中选择“图像”,然后选择“图像大小”,设置新的图片尺寸;2、使用自由变换工具,在工具栏中选择自由变换工具,在图片上点击右键,选择“缩放”选项,调整图片大小;3、使用画布大小工具,选择“图...
    99+
    2023-08-14
  • css中如何设置图片大小
    css中设置图片大小的方法:使用width和height属性来设置图片大小,只需要给img图片元素设置“width:值;height:值;”样式即可。具体操作方法:首先创建一个html文件。在html文件中添加html代码架构。<!D...
    99+
    2024-04-02
  • css中怎么设置背景图的大小
    css中怎么设置背景图的大小,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。来看一下小栗子吧。<style>  &nb...
    99+
    2024-04-02
  • Win7系统中快速截图的方法介绍(图文)
    Win7系统快速截图技巧。  1.“截图工具”真方便,轻松解决大问题  在微软公司最新推出的操作系统Windows 7 中为大家提供了一款名为“截图工具”的小软件,通过它就...
    99+
    2023-05-26
    Win7 快速截图 图文 系统 方法
  • CSS获取图片主题色的方法
    这篇文章给大家分享的是有关CSS获取图片主题色的方法的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。背景起因是微信技术群里有个同学发问,有什么方法能够获取图片的主色呢?有一张图片,获取他的主色调:利用获取到的这个颜...
    99+
    2023-06-15
  • ps导入图片到图层调整大小的方法
    这篇文章主要介绍“ps导入图片到图层调整大小的方法”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“ps导入图片到图层调整大小的方法”文章能帮助大家解决问题。首先创建一个画布,“新建”一个图层。接着选中...
    99+
    2023-07-02
  • css中img图片怎么设置大小
    要在 css 中设置图片大小,可以使用以下属性:1. width:设置图片的宽度。2. height:设置图片的高度。3. max-width 和 max-height:保持图片的宽高比...
    99+
    2024-04-26
    css
  • CSS实现图片放大缩小效果的技巧和方法
    在网页设计中,添加图片元素是非常常见的操作。而为了提升用户体验,实现一些特殊效果是必不可少的。本文将介绍使用CSS来实现图片放大缩小效果的一些技巧和方法,并给出具体的代码示例。一、使用transform属性实现图片的缩放效果transfor...
    99+
    2023-10-21
    CSS 技巧方法 图片放大缩小
  • Python获取图片的大小/尺寸
                                                                    Python获取图片的大小/尺寸分辨率   1、pil获取:     (1)、安装扩展         pip...
    99+
    2023-01-31
    尺寸 大小 图片
  • Excel截图的方法是什么
    这篇文章主要介绍“Excel截图的方法是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Excel截图的方法是什么”文章能帮助大家解决问题。Excel截图方法方法一、快捷键截图选中所需要的截图区域...
    99+
    2023-07-01
  • Ecilisp截图的方法是什么
    在Emacs中使用Ecilisp模式时,可以使用以下步骤截取Ecilisp代码的屏幕截图: 将光标移动到要截图的代码部分。 按下 ...
    99+
    2024-03-02
    Ecilisp
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作