我用css精灵图拼接了自己的英文名字,不会还有人不知道精灵图技术吧?

我用css精灵图拼接了自己的英文名字,不会还有人不知道精灵图技术吧?我用css精灵图拼接了自己的英文名字,不会还有人不知道精灵图技术吧?

大家好,又见面了,我是你们的朋友全栈君。

? 个人简介

  • ? 作者简介:大家好,我是阿牛?
  • ? 个人主页:馆主阿牛?
  • ? 支持我:点赞?+收藏⭐️+留言?
  • ? 系列专栏:web开发?
  • ?格言:迄今所有人生都大写着失败,但不妨碍我继续向前!?

请添加图片描述

上期传送门:
?css中的选择器
?css盒子模型及其实战案例(上)
?css盒子模型及其实战案例(下)
?css网页布局之浮动及其实战案例(超详细)
?css中的定位详解
?css中元素的显示与隐藏


?前言

今天学习css精灵图技术,并且通过用它拼接自己的英文名字,拿起小本本记好了哦!
请添加图片描述

?什么是精灵图?

我们常常在网页中可以看到一些小图标,我们都知道这种小图标要么是图片做的,要么就是字体图标。举个例子,我们看王者荣耀官网:
在这里插入图片描述
在这里插入图片描述

这里的“下载游戏”按理说应该是一张单一的图,但是我们却看到他的background里的图片一大块里有很多其他小图标,很容易想到他把这个网站用到的一些图标都放到这一张图片里呢,这就是精灵图,包括我们常学习的学习通网站,经过我以前的分析,也发现了精灵图的影子,由此可见精灵图技术在网页中十分常见。

?为什么需要精灵图技术?

请添加图片描述
一个网页中往往会应用很多小的背景图像作为修饰,当网页中的图像过多时,服务器就会频繁地接收和发送请求图片,造成服务器请求压力过大,这将大大降低页面的加载速度。
因此,为了有效地减少服务器接收和发送请求的次数,提高页面的加载速度,出现了 CSS 精灵技术(也称 CSS Sprites 、 CSS 雪碧)。
核心原理:将网页中的一些小背景图像整合到一张大图中,这样服务器只需要一次请求就可以了,请求一次,这张图片就会被缓存到浏览器本地,下次就不用在发送请求了。

?精灵图( sprites )的使用

我们把所有需要的图标都放到一张图片中,那么我们怎么把相应的小图标布局到对应的地方呢?
在这里插入图片描述
当给我们有大小的盒子添加背景图片后,默认是图片的左上角内容作为盒子背景,当我们需要将特定背景放到盒子里时,就需要 background – position属性来移动背景图,使得特定图标显示到特定位置。

使用精灵图核心:

  • 精灵技术主要针对于背景图片使用。就是把多个小背景图片整合到一张大图片中。
  • 这个大图片也称为 sprites 精灵图或者雪碧图。
  • 移动背景图片位置,此时可以使用 background – position 。
  • 移动的距离就是这个目标图片的 x 和 y 坐标。
  • 注意网页中的坐标有所不同因为一般情况下都是往上往左移动,所以数值是负值。
  • 使用精灵图的时候需要精确测量,每个小背景图片的大小和位置。

至于移动的像素的大小可以用工具量出来,电脑自带的画图也能量。

?用精灵图拼接自己的英文名

用到的图片:123.png
请添加图片描述

?代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style> /* 顶部装饰及其位置 */ .top{ 
      width: 730px; height: 550px; margin: 10px auto; border: 1px dotted pink; border-radius: 20%; background: url("123.png") no-repeat -30px -50px ; } .demo{ 
      width: 320px; height: 80px; margin: 0 auto; border-bottom: 5px dashed skyblue; } .demo div{ 
      float: left; width:70px; height: 80px; background: url("123.png") no-repeat ; } /* 字母A的位置 */ .demo .demo1{ 
      background-position: -35px -692px; margin-right: 40px; } /* 字母N的位置 */ .demo .demo2{ 
      background-position: -352px -826px; } /* 字母I的位置 */ .demo .demo3{ 
      background-position: -685px -692px; } /* 字母U的位置 */ .demo .demo4{ 
      background-position: -196px -953px; } span{ 
      position: absolute ; right:35%; bottom: 2%; font-size: large; color: orangered; } </style>
</head>
<body>
    <div class="top"></div>
    <div class="demo">
        <div class="demo1"></div>
        <div class="demo2"></div>
        <div class="demo3"></div>
        <div class="demo4"></div>
    </div>
    <span>阿牛</span>
</body>
</html>

?结果

在这里插入图片描述

?结语

喜欢就给个三连吧!!!我们一起加油!!!有问题评论区留言或者私信博主,我会一一回的!!!? ? ?

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/140966.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • c++面试选择题_C语言经典笔试题

    c++面试选择题_C语言经典笔试题1.new、delete、malloc、free关系delete会调用对象的析构函数,和new对应free只会释放内存,new调用构造函数。malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符。它们都可用于申请动态内存和释放内存。对于非内部数据类型的对象而言,光用maloc/free无法满足动态对象的要求。对象在创建的同时要自动执行构造函数,对象在消亡之前要…

    2022年8月26日
    6
  • 多重共线性:python计算VIF以及使用vif做因子独立性检验的方法「建议收藏」

    多重共线性:python计算VIF以及使用vif做因子独立性检验的方法「建议收藏」转自:https://blog.csdn.net/ab1112221212/article/details/100133066多重共线性在python中的解决方法本文将讨论多重共线性的相关概念及利用python自动化消除多重共线性的方法,以供参考,欢迎拍砖线性模型与非线性模型关于线性模型与非线性模型的定义,似乎并没有确切的定论,但是个人认为建模首先得清楚地认识样本,样本有线性可分与线性不可分两种,所谓是否线性可分,是指是否存在一条直线(或平面)将样本分开。上图中y=0和y=1的样本可以由一

    2022年6月5日
    205
  • 线程池 ManualResetEvent[通俗易懂]

    线程池 ManualResetEvent[通俗易懂]线程池:    “线程池”是可以用来在后台执行多个任务的线程集合。(有关背景信息,请参见使用线程处理。)这使主线程可以自由地异步执行其他任务。线程池通常用于服务器应用程序。每个传入请求都将分配给线程池中的一个线程,因此可以异步处理请求,而不会占用主线程,也不会延迟后续请求的处理。一旦池中的某个线程完成任务,它将返回到等待线程队列中,等待被再次使用。这种重用使应用程序可以避免为每个任…

    2022年7月18日
    14
  • java集合介绍_arraylist原理

    java集合介绍_arraylist原理概述ArrayList是List接口下一个基于可扩展数组的实现类,它和它的兄弟类Vector有着一样的继承关系,也都能随机访问,但是不同的是不能保证线程安全。这是关于java集合类源

    2022年8月16日
    5
  • Ubuntu 18.04通过deb安装cuda 10.2

    Ubuntu 18.04通过deb安装cuda 10.2wgethttps://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-ubuntu1804.pinsudomvcuda-ubuntu1804.pin/etc/apt/preferences.d/cuda-repository-pin-600wgethttps://developer.download.nvidia.com/compute/cuda/10.2/Prod/local_installer

    2022年5月9日
    69
  • 词向量算法「建议收藏」

    词向量算法「建议收藏」https://www.cnblogs.com/the-wolf-sky/articles/10192363.htmlhttps://blog.csdn.net/weixin_37947156/article/details/83146141基于神经网络的表示一般称为词向量、词嵌入(wordembdding)或分布式表示。神经网络的词向量和其他分布式类似,都基于分布式表达方式,核心依然是上…

    2022年6月11日
    36

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号