Css基础——精灵图(sprites)和字体图标

news2024/11/15 11:13:37

1、精灵图

1.1、精灵图的由来

一个网页中往往会应用很多小的背景图像作为修饰,当网页中的图像过多时,服务器就会频繁地接收和发送 请求图片,造成服务器请求压力过大,这将大大降低页面的加载速度。

因此,为了有效地减少服务器接收和发送请求的次数,提高页面的加载速度,出现了 CSS 精灵技术(也称 CSS Sprites、CSS 雪碧)。

核心原理:将网页中的一些小背景图像整合到一张大图中 ,这样服务器只需要一次请求就可以了。

1.2、精灵图的使用方法

使用精灵图核心总结:

1. 精灵图主要针对于小的背景图片使用。

2. 主要借助于背景位置来实现---background-position 。

3. 一般情况下精灵图都是负值。(千万注意网页中的坐标: x轴右边走是正值,左边走是负值, y轴同理。)

1.3、实际案例

要求:用精灵图拼写出自己的名字

精灵图:

a9068e95c3d645c2b607992dd093879f.jpeg

html:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link rel="stylesheet" href="./css/style.css">
</head>

<body>
    <div class="box">
        <span class="d dib"></span>
        <span class="i dib"></span>
        <span class="h dib"></span>
        <span class="u dib"></span>
        <span class="a dib"></span>
        <span class="n dib"></span>
    </div>
</body>

</html>

css:

* {
    margin: 0;
    padding: 0;
}

.box {
    width: 900px;
    height: 400px;
    margin: 100px auto;
    background-color: skyblue;
}

.dib {
    display: inline-block;
}

.d {
    width: 118px;
    height: 122px;
    background: url(../images/abcd.jpg) no-repeat -350px 0;
}

.i {
    width: 60px;
    height: 124px;
    background: url(../images/abcd.jpg) no-repeat -327px -135px;
}

.h {
    width: 104px;
    height: 107px;
    background: url(../images/abcd.jpg) no-repeat -218px -144px;
}

.u {
    width: 121px;
    height: 128px;
    background: url(../images/abcd.jpg) no-repeat -470px -414px;
}

.a {
    width: 115px;
    height: 122px;
    background: url(../images/abcd.jpg) no-repeat;
}

.n {
    width: 120px;
    height: 123px;
    background: url(../images/abcd.jpg) no-repeat -249px -267px;
}

效果图:

ffd9a0881d4a4779af437e1b28cdc7fe.png


2、字体图标

2.1、字体图标的来源

精灵图是有诸多优点的,但是缺点很明显。

字体图标使用场景: 主要用于显示网页中通用、常用的一些小图标。

1. 图片文件还是比较大的。

2. 图片本身放大和缩小会失真。

3. 一旦图片制作完毕想要更换非常复杂。

此时,有一种技术的出现很好的解决了以上问题,就是字体图标 iconfont。 字体图标可以为前端工程师提供一种方便高效的图标使用方式,展示的是图标,本质属于字体。

2.2、字体图标的优点

1、轻量级:一个图标字体要比一系列的图像要小。一旦字体加载了,图标就会马上渲染出来,减少了服务器请求

2、灵活性:本质其实是文字,可以很随意的改变颜色、产生阴影、透明效果、旋转等

3、兼容性:几乎支持所有的浏览器,请放心使用 注意: 字体图标不能替代精灵技术,只是对工作中图标部分技术的提升和优化。

注意: 字体图标不能替代精灵技术,只是对工作中图标部分技术的提升和优化。


总结:

1. 如果遇到一些结构和样式比较简单的小图标,就用字体图标。

2. 如果遇到一些结构和样式复杂一点的小图片,就用精灵图。 


字体图标是一些网页常见的小图标,我们直接网上下载即可。 因此使用可以分为:

1. 字体图标的下载

2. 字体图标的引入 (引入到我们html页面中)

3. 字体图标的追加 (以后添加新的小图标)

2.3、字体图标的下载

推荐下载网站:

icomoon 字库 http://icomoon.io

阿里 iconfont 字库 http://www.iconfont.cn/

2.4、字体图标的引入

下载教程:以阿里 iconfont 字库为例

1、打开网站,进入一个库中,点击购物车图标,加入合计

9407039e9db64fb4b8af374b72cd618f.png

2、待选完了一些字体图标以后,点击网页左上方购物车图标

a4cc430ecf594077a1f5ac5e547b787d.png

3、点击下载代码

7caf84682d5a49d89bef52d51d90bbd3.png

2.5、字体图标的使用

1、将解压后的文件放入根目录下的fonts文件夹(需要自己创建)

931dabd4e6c448c9953254d72bf0aac1.png

2、在页面中引入字体的css文件

e345175181ae4a2aa904ed7891f2d113.png

3、打开文件夹里的demo_index.html

0bf1daf16d714d90adc4a2cd4998d1d4.png

4、复制你想使用文件的Unicode码

96d63c4de1854357b373e0afddb96902.png

5、在标签中加入字体的类,并填写内容为Unicode码

c7c25040a51e4610ba770e279e8558df.png

效果图:

0b804ec91a614a35b6ed1c0ee5e7806d.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1515914.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

可行性研究报告模板

1业务需求可行性分析 2技术可行性分析 2.1规范化原则 2.2高度的兼容性和可移植性 2.3人性化、适用性 2.4标准化统一设计原则 2.5先进安全可扩展性原则 3开发周期可行性分析 4人力资源可行性分析 5成本分析 6收益分析 7结论 软件项目全套资料获取下载&#xff1a;软件开发全套资…

链路聚合练习

下面的接口都改为Etherent [LSW1]int Eth-Trunk 1 创建一个eth-trunk 1[LSW1-Eth-Trunk1]int g0/0/1[LSW1-GigabitEthernet0/0/1]eth-trunk 1 将接口0/0/1加入eth-trunk 1[LSW1-GigabitEthernet0/0/1]int g0/0/2[LSW1-GigabitEthernet0/0/2]eth-trunk 1[LSW1-GigabitEthernet…

CAQ六西格玛绿带认证流程:从能力考试到评价全解析

六西格玛绿带认证&#xff0c;作为质量管理领域的一个重要里程碑&#xff0c;对于专业人士来说是一项极具价值的认证。张驰咨询将详细解读这一流程&#xff0c;包括理论知识考试、项目实践能力评价&#xff0c;以及期满换证的相关细节。 一、理论知识考试 六西格玛绿带的理论…

OpenAI机器人,一出手就是王炸

「借助 OpenAI 的能力&#xff0c;Figure 01 现在可以与人全面对话了&#xff01;」 本周三&#xff0c;半个硅谷都在投的明星机器人创业公司Figure&#xff0c;发布了自己第一个 OpenAI 大模型加持的机器人 demo。 这家公司在 3 月 1 日刚刚宣布获得 OpenAI 等公司的投资&…

论文阅读——VSA

VSA: Learning Varied-Size Window Attention in Vision Transformers 方法&#xff1a; 给定输入特征X&#xff0c;VSA首先按照基线方法的例程&#xff0c;将这些标记划分为几个窗口Xw&#xff0c;窗口大小为预定义的w。我们将这些窗口称为默认窗口&#xff0c;并从默认窗口中…

(一)搭建Android Studio开发环境

一、JDK 1、下载 2、安装 双击进行安装&#xff0c;修改安装路径为&#xff1a;D:\Java\jdk-17.0.4.1即可&#xff0c;安装完成后目录如下&#xff1a; 配置环境变量 3、测试 WinR&#xff0c;输入cmd&#xff0c;按Enter后&#xff0c;键入&#xff1a;java --version&…

面试经典-18-合并两个有序链表

题目 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例 1&#xff1a; 输入&#xff1a;l1 [1,2,4], l2 [1,3,4] 输出&#xff1a;[1,1,2,3,4,4] 解 class Solution {// 成功public ListNode mergeTwoLists(ListN…

探索世界的第一步:新生儿抬头指南

引言&#xff1a; 新生儿的抬头能力是他们发展早期的重要里程碑之一。这不仅是对颈部肌肉的锻炼&#xff0c;更是对视觉和感觉系统的发展的重要促进。在这个阶段&#xff0c;父母的关注和引导至关重要&#xff0c;以帮助宝宝安全地探索和发展。 1. 激发兴趣&#xff1a; 从宝宝…

matlab调用nlopt时向目标函数中传入数据的案例

matlab调用nlopt时向目标函数中传入数据的案例&#xff0c;如代码所示&#xff1a; clc,clear,close allopt.algorithm NLOPT_LN_AUGLAG; opt.lower_bounds -10; opt.upper_bounds 10; opt.min_objective (x) goal_function(x,[1,2,3,4,5,6,7,8,9]); opt.xtol_rel 1e-8; …

week07day01(powerbi)

一. Power BI简介 1. 构成部分 power query: 进行简单的数据清洗power pivot : 进行指标计算power view &#xff1a; 进行报表视图 二. Power Query (进行数据清洗) 1. 如何获取数据&#xff1a; 点击获取数据 ——> 选择导入数据的类型——> 会出现 "加载&…

Python学习:数据类型转换

数据类型转换 对数据内置的类型进行转换&#xff0c;数据类型的转换&#xff0c;一般情况下你只需要将数据类型作为函数名即可。 Python 数据类型转换可以分为两种&#xff1a; 隐式类型转换 - 自动完成显式类型转换 - 需要使用类型函数来转换 隐式类型转换 Python 会自动…

c/c++ | 求叶子结点个数 |构建B树 | 动态规划--找叶子结点个数

是这样的&#xff0c;一道代码题&#xff0c;根据输入数据&#xff0c;计算运行结果 #include<bits/stdc.h> using namespace std; vector<int>g[10]; int ans 0; void dfs(int x){if(g[x].size() 0){ans;return;}for(int i 0; i < g[x].size(); i){dfs(g[x]…

CVE-2019-5782:kArgumentsLengthType 设置偏小导致优化阶段可以错误的去除 CheckBound 节点

文章目录 环境搭建漏洞分析笔者初分析笔者再分析漏洞触发源码分析 漏洞利用总结 环境搭建 sudo apt install pythongit reset --hard b474b3102bd4a95eafcdb68e0e44656046132bc9 export DEPOT_TOOLS_UPDATE0 gclient sync -D// debug version tools/dev/v8gen.py x64.debug ni…

学会这几步,让酷开系统的使用体验更加出色!

在当今数字化快速发展的时代&#xff0c;用户体验&#xff08;User Experience, UX&#xff09;已成为产品和服务成功的关键因素之一。随着市场竞争的加剧&#xff0c;仅仅提供功能性强大的产品已不足以满足用户的需求&#xff0c;如何提升整体体验、确保用户的满意度和忠诚度&…

uniapp开发的跳转到小程序

uniapp开发的h5跳转到小程序 https://www.cnblogs.com/xiaojianwei/p/16352698.html官方&#xff1a;使用 URL Scheme 打开小程序 https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/url-scheme.html 链接代码 <a href"weixin://dl/business/…

标准砂轮加工麻花钻或者铣刀螺旋槽齿形

螺旋槽与砂轮的空间位置运动关系可用下图表示&#xff0c;螺旋槽的形成靠工件绕轴线的旋转以及砂轮沿轴线的移动来完成的&#xff0c;以下坐标系可以清楚的描述二者之间的运动关系&#xff1a; 砂轮的形状如下&#xff1a; 经过坐标变换和下面这个重要的公式来计算工件的齿形…

【Docker】在 Ubuntu20.04 上配置 Docker 开发环境

【Docker】在 Ubuntu20.04 上配置 Docker 开发环境 1 安装 Docker2 加入 Docker 用户组 1 安装 Docker 参考文档: Link 卸载以避免冲突 for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done设…

水文监测站的工作原理

TH-SW3水文监测站是一种专门用于监测水文气象数据的设施或场所&#xff0c;通常位于河流、湖泊、水库或其他水体附近。其主要功能包括收集和记录与水文气象相关的数据&#xff0c;如降雨量、水位、水温、流量、蒸发量等信息。这些数据对于水资源管理、防洪抗旱、生态环境保护等…

vmware workstation虚拟机报错”该虚拟机似乎正在使用中“

虚拟机报错&#xff1a; 解决方法&#xff1a; 进入到虚拟机的安装目录里&#xff0c;将lck结尾的文件删掉即可 重新点击虚拟机恢复正常

小白学视觉 | 神经网络训练trick总结

本文来源公众号“小白学视觉”&#xff0c;仅用于学术分享&#xff0c;侵权删&#xff0c;干货满满。 原文链接&#xff1a;神经网络训练trick总结 来自 | 知乎 作者 | Anticoder 链接 | https://zhuanlan.zhihu.com/p/59918821 本文仅作学术交流&#xff0c;如有侵权&am…