-
2021-06-27 06:30:12
电脑重装系统后桌面没有图标了怎么办?有些朋友会发现,在电脑重装系统后,桌面上的图标全部没有了,不管怎么去刷新桌面,始终就是显示不出来,这怎么办呢?下面,我们就一起来看看怎么去解决这个问题!
1、 右键点击鼠标,点击排列图标然后点击显示桌面图标,也就是让显示桌面图标前有一个√号。 这种方法比较简单,如果不能解决看方法2.
2、如果故障依旧,打开任务管理器(按下“Ctrl+Alt+Del”组合键即可打开),点击“文件”→“新建任务”,在打开的“创建新任务”对话框中输入“explorer”,单击“确定”按钮后,稍等一下就可以见到桌面图标了。
3、如果故障依旧,按Windows键+R打开运行窗口,运行输入regedit回车打开注册表编辑器,定位到[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon],然后查看在右侧的Shell值是否为“Explorer.exe”。如果不是,请手动修改为“Explorer.exe”。双击Shell,在打开的对话框中的数值数据中输入Explorer.exe按确定,重启电脑即可(如果右侧没有Shell,在右面右击空白处选新建/字符串,在数值名称添入“Shell”,在双击它在打开的对话框中的数值数据中输入Explorer.exe按确定重启电脑即可)。
4、如果故障依旧,可能在你的C:\Windows目录中的“explorer.exe”进程文件受损,请到网上下载“explorer.exe”进程文件,下载后,将它放到你的C:\Windows目录中(如果你的电脑无法下载请用别的电脑下载或在别的电脑上将C:\Windows目录中的“explorer.exe”进程文件用U盘复制下来,开机按F8进入安全模式中将“explorer.exe”进程文件,它放到你的C:\Windows目录中即可。5、如果还是不行,下载Win清理助手查杀木马,还原系统或重装。
以上便是关于电脑重装系统后桌面没有图标了怎么办的解决方法,希望小编的分享能够帮助到大家!
更多相关内容 -
jeg-trenger-hjelp:一个简单的应用程序,当许多学生需要帮助而老师能力有限时,它可以用作学校的排队系统
2021-07-07 01:05:12一个有用的场景是学校的数学课,许多学生需要帮助完成作业,但老师没有能力立即提供帮助。 传统方法有几种可能的方法来解决这个问题: 举手 => 可能会导致对谁排在第一位的分歧。 你也厌倦了长时间的牵着你的手 让... -
openlayers5中用iconfont作为图标
2019-03-20 16:38:08openlayers4中用font设置图标样式 就iconfont在ol5中的使用做了一个尝试,后面有很多童鞋问我说实现不了,一直没有时间去做一个详细的测试,最近在做了诸多测试后,觉得这种方式比较靠谱,在此分享出来,希望对用到...概述
前面有文章 openlayers4中用font设置图标样式 就iconfont在ol5中的使用做了一个尝试,后面有很多童鞋问我说实现不了,一直没有时间去做一个详细的测试,最近在做了诸多测试后,觉得这种方式比较靠谱,在此分享出来,希望对用到的童鞋有所帮助和启示。
实现思路
实现的思路流程图如下:
实现后效果
实现后效果如下:
实现代码
<html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Ol3 wms</title> <link rel="stylesheet" type="text/css" href="../../plugin/ol4/ol.css"/> <link rel="stylesheet" type="text/css" href="css/font/iconfont.css"/> <style type="text/css"> body, #map { border: 0; margin: 0; padding: 0; width: 100%; height: 100%; font-size: 13px; } .icon-font { position: absolute; top: 20px; right: 20px; margin: 0; padding: 0; list-style: none; z-index: 99; } .icon-font li { display: inline-block; cursor: pointer; border: 1px solid #9b9b9b; border-radius: 50%; padding: 5px; } .icon-font li:hover, li.active { background-color: red; color: white; } .icon-font li span { font-size: 25px; } </style> <script type="text/javascript" src="../../plugin/ol4/ol.js"></script> <script type="text/javascript" src="../../plugin/jquery/jquery-3.1.1.min.js"></script> </head> <body> <div id="map"> <ul class="icon-font" id="icons"> <li class="active"> <span class="iconfont" onclick="changeIconStyle(this)"></span> </li> <li> <span class="iconfont" onclick="changeIconStyle(this)"></span> </li> <li> <span class="iconfont" onclick="changeIconStyle(this)"></span> </li> <li> <span class="iconfont" onclick="changeIconStyle(this)"></span> </li> </ul> </div> <script type="text/javascript"> var map; var format = 'image/png'; var bounds = [73.4510046356223, 18.1632471876417, 134.976797646506, 53.5319431522236]; var untiled = new ol.layer.Image({ source: new ol.source.ImageWMS({ ratio: 1, url: 'wms server url', params: {'FORMAT': format, 'VERSION': '1.1.1', LAYERS: 'layers', STYLES: '' } }) }); var projection = new ol.proj.Projection({ code: 'EPSG:4326', units: 'degrees' }); map = new ol.Map({ controls: ol.control.defaults({ attribution: false }), target: 'map', layers: [ untiled ], view: new ol.View({ projection: projection }) }); map.getView().fit(bounds, map.getSize()); var vectorSource = new ol.source.Vector({ url:"data/capital.geojson", format: new ol.format.GeoJSON() }); var vector = new ol.layer.Vector({ source: vectorSource, style: styleFunc }); map.addLayer(vector); function changeIconStyle(self) { var icons = document.getElementById('icons').children; for(var i =0;i<icons.length;i++) { icons[i].classList.remove('active'); } self.parentNode.classList.add('active'); vector.setStyle(styleFunc()); } function getCurrentIcon(fontSize, fillColor, strokeColor) { var span = document.getElementsByClassName('active')[0].children[0]; var canvas = document.createElement('canvas'); canvas.width = fontSize; canvas.height = fontSize; // 获取画布 var context = canvas.getContext('2d'); context.font = fontSize + 'px iconfont'; context.textAlign="left"; context.textBaseline="top"; var content = span.textContent; if(fillColor && fillColor!==""){ context.fillStyle = fillColor; context.fillText(content, 0, 0); } if(strokeColor && strokeColor!==""){ context.strokeStyle = strokeColor; context.strokeText(content, 0, 0); } return canvas.toDataURL('image/png'); } function styleFunc() { var zoom = map.getView().getZoom(); var scale = zoom/4; if(scale<0.3) scale=0.3; var styleIcon = new ol.style.Style({ image: new ol.style.Icon({ anchor: [0, 0], anchorXUnits: 'fraction', anchorYUnits: 'pixels', scale: scale, src: getCurrentIcon(30, 'rgba(255,0,0,0.6)', 'blue') }) }); return styleIcon; } </script> </body> </html>
技术博客
CSDN:http://blog.csdn.NET/gisshixisheng
在线教程
https://edu.csdn.net/course/detail/799
https://edu.csdn.net/course/detail/7471
联系方式类型 内容 qq 1004740957 公众号 lzugis15 e-mail niujp08@qq.com webgis群 452117357 Android群 337469080 GIS数据可视化群 458292378 -
包含几个标题,文本预设,形状,背景,双音调,梯度,图标,给予最大的创作可能性
2022-03-16 20:22:04解压密码:123 ||Valentine Day Facebook Cover Pack [AEP]免费下载它为内容创造者提供了一个巨大的运动元素库,包含几个标题,文本预设,形状,背景,双音调,梯度,图标,给予最大的创作可能性。它还包括6个美丽和... -
如何设计风格统一的图标
2020-11-11 16:16:28今天胡老师和大家探讨如何设计风格统一的图标。 APP中的图标的类型多种多样,最常出现的有:面形图标,线形图标,扁平描线图标。文章主要讲这3种图标。图标的形式没有绝对的对错,只要在当下是合适就是最好的。...如何设计风格统一的图标。图标是决定一个APP风格的重要构成元素,要设计一款讲究的APP,成为一个讲究的设计师。掌握如何设计一套统一风格的icon是对UI设计师的基本要求。今天胡老师和大家探讨如何设计风格统一的图标。
APP中的图标的类型多种多样,最常出现的有:面形图标,线形图标,扁平描线图标。文章主要讲这3种图标。图标的形式没有绝对的对错,只要在当下是合适就是最好的。设计圈有点像时尚界,有些反复,时不时会流行复古,时不时又流行现代……
一. 面形图标
面形图标的视觉占比大,有比较强的视觉表达力,通常用在应用中的主要入口。最新的苹果iOS 11底部标签栏就使用了面形图标。那么面型图标的风格要如何统一呢?
在APP界面中,面型图标通常有两种使用方法:正形和反白。我将分别讲下这两种使用情况下,如何进行统一。
1.正形
上图是面形图标的正形使用,要统一风格,要注意的是:
a. 面的面积
b.负形的面积
c. 线条的统一
d. 形的统一。可以从形的形状,圆角进行统一
示例中的icon,在面的形上也进行了统一,全部用了圆形进行布尔运算,这种统一在需要画大量功能性icon时,并不是必要条件。满足以上3个条件,基本就可以做一套风格统一的面形icon了。
2.反白
上图是面形图标的反白使用,反白使用时,除了正形图标的3个注意点,还需注意图标和背板的尺寸比例,如何设计风格统一的图标https://www.aaa-cg.com.cn/ui/2915.html?seo1比例并没有严格的规定,但是建议用0.618黄金比例。
注意点如下:
a. 面的面积
b. 负形的面积
c. 线条的统一
d. 形的构成统一。比如:圆角统一
e. 背板和图标的比例
.线形图标
线形图标比较轻量化,减少视觉干扰,让用户集中在产品核心功能上。在iOS11以前,iOS原生应用的导航栏,标签栏,工具栏全部采用了2px线框的图标设计。
线形图标的使用也有两种:正形和反白。大海不建议线形图标的反白使用,因为从设计逻辑上讲,背板结合线形图标是互相矛盾的。
正形
上图中线形图标,要统一风格,有以下几点:
a. 线的形状
b. 闭合区域的大小
c. 线的粗细
d. 线的断点
三.扁平描线图标
扁平描线图标其实是面形和线形的结合,一开始这种设计形式,主要用来做复杂度比较高的插画,后来逐渐在标签栏,首页功能入口这些位置开始应用。这类图标相对于纯面形,纯线形来说,风格明显,个性化程度更强。
扁平描线图标,统一风格,除了要注意线形图标设计以外,要注意填色区域的大小。
a. 线的形状
b.线的粗细
c. 线的断点
d. 填色区域的大小,颜色
图标设计有专业的参考网格,按照参考网格设计可以很大程度的使图标大小更为统一,但是胡老师建议大家千万不要太拘泥于网格,视觉统一最重要,参考网格是帮助设计的工具,不要被它所限制。理论结合实践,实践的过程中不断的自我总结,才能不断的成长。
摘自:https://www.aaa-cg.com.cn/ui/2915.html?seo1
-
memcached for Win32/x64服务器(袋鼠图标,版本是1.4.13)
2015-05-12 11:58:19h 显示帮助">MemCached For Win32 服务器(高洛峰老师讲课那种) p 监听的端口 l 连接的IP地址 默认是本机 d start 启动memcached服务 d restart 重起memcached服务 d stop|shutdown 关闭正在运行的memcached... -
【吴刚】UI安卓主题图标设计标准视频教程
2018-03-27 22:34:26本套教程在学员有基本的PS和AI软件基础的基础上,循序渐进,深入浅出,全篇干货,系统化的讲解UI主题图标设计的特点、...以及相关的技术实现方法手把手教授学生UI主题图标设计和表现技巧,帮助学者学以致用,举一反三。 -
【吴刚】UI线框图标设计初级入门标准教程
2018-03-27 18:15:13本套教程在学员有基本的PS和AI软件基础的基础上,循序渐进,深入浅出,全篇干货,系统化的讲解UI线框图标设计的特点、技术实现方法及应用场景,以及通过逐个icon案例绘制方法实操,结合移动端的用户交互使用规范,... -
【吴刚】UI天气图标及控件设计标准视频教程
2018-03-27 19:12:36本套教程在学员有基本的PS和AI软件基础的基础上,循序渐进,深入浅出,全篇干货,系统化的讲解UI天气图标及控件...以及相关的技术实现方法手把手教授学生UI天气图标及控件设计和表现技巧,帮助学者学以致用,举一反三。 -
【吴刚】UI拟物图标设计初级入门标准教程
2018-03-27 18:21:09本套教程在学员有基本的PS和AI软件基础的基础上,循序渐进,深入浅出,全篇干货,系统化的讲解UI拟物图标设计的特点、技术实现方法及应用场景,以及通过逐个icon案例绘制方法实操,结合移动端的用户交互使用规范,... -
【吴刚】UI扁平化图标设计初级入门标准教程
2018-03-27 18:18:30本套教程在学员有基本的PS和AI软件基础的基础上,循序渐进,深入浅出,全篇干货,系统化的讲解UI扁平化图标设计的特点、技术实现方法及应用场景,以及通过逐个icon案例绘制方法实操,结合移动端的用户交互使用规范,... -
手把手教你在vue中使用icon图标,附demo代码
2021-01-11 20:16:45icon图标的使用 START icon图标的使用,对于番茄我来说,算是一个痛点吧。写这篇文章之前,也看了不少别人有关图标使用的博客。想了很久,还是想自己写一篇属于番茄我自己的一篇图标相关的博客。一来是复习,一来...icon图标的使用
START
icon图标的使用,对于番茄我来说,算是一个痛点吧。写这篇文章之前,也看了不少别人有关图标使用的博客。想了很久,还是想自己写一篇属于番茄我自己的一篇图标相关的博客。一来是复习,一来算是总结。这次必不会鸽了,一气呵成,一次到位.
文章的主体顺序,还是按照我接触的先后做排序的,由易到难,这样方便理解。当然,番茄我了解的知识,或许也不够全面,请见谅.
出于比较有责任的想法,我会写比较多的demo,展示具体用法,确保百分百可以运行,方便学习或CV.
为了方便整合,所有演示demo我都会写在一个
vue
项目中。演示代码
本文demo的github地址 :https://github.com/lazy-tomato/icon-example/tree/tomato
初次接触
最开始学习
html
的时候,往往都是老师布置作业,下课前会给我们发放课后作业需要用到的图片或图标,所以第一个就讲讲最基本图标的使用吧,直接本地引用图片/图标文件。先上代码
<template> <div class="first"> <h2>1.初次接触:直接引入本地图片</h2> <div> <h4>1.1 引入本地图片</h4> <img src="@/assets/images/jacket.png" alt="上衣" /> <!-- 下面这种用法也可以 `@` 就等于 `/src` --> <!-- <img src="../../../../assets/images/jacket.png" alt="上衣" /> --> <h4>1.2 引入在线链接</h4> <img src="https://upload.jianshu.io/users/upload_avatars/13278218/60803b63-0f9d-490e-9c41-1511c56025d4?imageMogr2/auto-orient/strip|imageView2/1/w/240/h/240" alt="上衣" /> <h4>1.3 require形式使用</h4> <img :src="imageShorts" alt="短裤" /> <h4>1.4 import形式使用</h4> <img :src="socks" alt="袜子" /> <h4>1.5 for循环遍历使用</h4> <div v-for="item in imagesList" :key="item.url"> <img :src="item.url" alt="" /> </div> </div> </div> </template> <script> // @ is an alias to /src import socks from "@/assets/images/socks.png"; export default { data() { return { imageShorts: require("@/assets/images/shorts.png"), socks: socks, imagesList: [ { url: "@/assets/images/jacket.png" }, { url: "../../../../assets/images/socks.png" }, { url: "https://upload.jianshu.io/users/upload_avatars/13278218/60803b63-0f9d-490e-9c41-1511c56025d4?imageMogr2/auto-orient/strip|imageView2/1/w/240/h/240", }, { url: require("@/assets/images/shorts.png") }, { url: socks }, ], }; }, }; </script> <style scoped> .first { color: #fff; min-height: 100%; height: auto; text-align: center; } h4 { padding: 60px 0 10px; border-bottom: 1px solid #21262d; } img { width: 100px; height: 100px; } </style>
运行效果
说明
- 可以看到运行的效果图中,使用v-for循环展示图片。使用本地图片路径,就会加载不出来。具体原因是因为 vue2是基于webpack进行打包运行的,而webpack会解析它为模块依赖 ,文件路径就会出错 ,所以本地图片在进行使用的时候,推荐使用
require
和import
方式使用。
CSS Sprite
CSS Sprite
中文可以叫它,精灵图/雪碧图,两种称呼都可以,番茄个人比较习惯叫它精灵图。那什么是CSS Sprite?
先上两个有代表性的精灵图,认识一下。
为什么用精灵图?
首先,我们先来了解一下,页面在接受图片的过程。
每张图片的显示是先由浏览器发送请求,然后服务器接受请求,返回请求内容。如果一个页面有上百张图片,哪怕是很小的图标,都需要经历一次这样的过程。那么,毋庸置疑,肯定会由于请求数量的增加让整个页面的加载速度降低。
正应为如此,精灵图(sprite)应运而生,图片整合技术,将大量的小图标整合到一张图,从而减少服务器接收和发送请求的次数,提高页面的加载速度。
怎么使用精灵图呢?
先上代码
<template> <div class="second"> <h2>2.CSS-Sprite如何使用</h2> <h4>2.1 通过css的background-position属性,对包含很多小图片的Sprite图片进行展示</h4> <div class="second-icon"> <div :style="{ backgroundImage: 'url(' + icon + ')' }" class="icon icon-one" ></div> <div :style="{ backgroundImage: 'url(' + icon + ')' }" class="icon icon-two" ></div> <div :style="{ backgroundImage: 'url(' + icon + ')' }" class="icon icon-three" ></div> <div :style="{ backgroundImage: 'url(' + icon + ')' }" class="icon icon-four" ></div> </div> <div> <h4>2.2 通过css的background-position属性,配合动画添加动态的小人(好像有些像素的小游戏,主角的移动就是用这个做的,不过哪个是用监听按键事件,切换不同的精灵图实现的)</h4> <div :style="{ backgroundImage: 'url(' + snowman + ')' }" class="snowman" ></div> </div> </div> </template> <script> export default { data() { return { icon: require("@/assets/images/iconSprite.png"), snowman: require("@/assets/images/snowmanSprite.jpg"), }; }, }; </script> <style scoped> .second { color: #fff; min-height: 100%; height: auto; text-align: center; } h4 { padding: 60px 0 10px; border-bottom: 1px solid #21262d; } .second-icon { display: flex; justify-content: space-around; align-items: center; } .icon { width: 40px; height: 40px; /* 是否重复 no-repeat 不重复 */ background-repeat: no-repeat; } .icon-one { /* 背景定位,可以通过百分比去设置 */ background-position: 5% 4%; } .icon-two { /* 背景定位,可以通过px去设置 */ background-position: -22px -78px; } .icon-three { /* 背景定位,可以通过top right center left bottom去设置 */ background-position: center -139px; } .icon-four { /* 当然也可以组合使用 */ background-position: 20% -205px; } /* 配合css动画可以实现动态的小人 */ .snowman { margin: 0 auto; width: 122px; height: 180px; animation: walk 1s steps(4) infinite; } @keyframes walk { 0% { background-position: 0; } 100% { background-position: -486px; } } </style>
运行效果
iconfont
后来随着学习的深入,项目越做越大,对图标的需求就多了起来,到这里不得不说一下,iconfont
- iconfont 是阿里提供的一个开源图库
- 官方网址:www.iconfont.cn
- 顾名思义,字体图标, iconfont提供多种格式的icon,平台也可将图标转换为字体,便于前端工程师自由调整与调用。
先看看官方的帮助文档
1.icon单个使用
直接登录账号,搜索自己想要使用的图标。点击下载,本地直接引用即可。
此种方式适合用在图标引用特别少,以后也不需要特别维护的场景。
不过如果是成体系的应用使用,建议用户把icon加入项目,然后使用下面三种推荐的方式。
2.unicode引用
unicode是字体在网页端最原始的应用方式,特点是:
- 兼容性最好,支持ie6+,及所有现代浏览器。
- 支持按字体的方式去动态调整图标大小,颜色等等。
- 但是因为是字体,所以不支持多色。只能使用平台里单色的图标,就算项目里有多色图标也会自动去色。
注意:新版iconfont支持多色图标,这些多色图标在unicode模式下将不能使用,如果有需求建议使用symbol的引用方式
unicode使用步骤如下:
第一步:拷贝项目下面生成的font-face
@font-face {font-family: 'iconfont'; src: url('iconfont.eot'); src: url('iconfont.eot?#iefix') format('embedded-opentype'), url('iconfont.woff') format('woff'), url('iconfont.ttf') format('truetype'), url('iconfont.svg#iconfont') format('svg'); }
第二步:定义使用iconfont的样式
.iconfont{ font-family:"iconfont" !important; font-size:16px;font-style:normal; -webkit-font-smoothing: antialiased; -webkit-text-stroke-width: 0.2px; -moz-osx-font-smoothing: grayscale;}
第三步:挑选相应图标并获取字体编码,应用于页面
<i class="iconfont">3</i>
3.font-class引用
font-class是unicode使用方式的一种变种,主要是解决unicode书写不直观,语意不明确的问题。
与unicode使用方式相比,具有如下特点:
- 兼容性良好,支持ie8+,及所有现代浏览器。
- 相比于unicode语意明确,书写更直观。可以很容易分辨这个icon是什么。
- 因为使用class来定义图标,所以当要替换图标时,只需要修改class里面的unicode引用。
- 不过因为本质上还是使用的字体,所以多色图标还是不支持的。
使用步骤如下:
第一步:拷贝项目下面生成的fontclass代码:
//at.alicdn.com/t/font_8d5l8fzk5b87iudi.css
第二步:挑选相应图标并获取类名,应用于页面:
<i class="iconfont icon-xxx"></i>
4.symbol引用
这是一种全新的使用方式,应该说这才是未来的主流,也是平台目前推荐的用法。相关介绍可以参考这篇文章 这种用法其实是做了一个svg的集合,与上面两种相比具有如下特点:
- 支持多色图标了,不再受单色限制。
- 通过一些技巧,支持像字体那样,通过
font-size
,color
来调整样式。 - 兼容性较差,支持 ie9+,及现代浏览器。
- 浏览器渲染svg的性能一般,还不如png。
使用步骤如下:
第一步:拷贝项目下面生成的symbol代码:
//at.alicdn.com/t/font_8d5l8fzk5b87iudi.js
第二步:加入通用css代码(引入一次就行):
<style type="text/css"> .icon { width: 1em; height: 1em; vertical-align: -0.15em; fill: currentColor; overflow: hidden; } </style>
第三步:挑选相应图标并获取类名,应用于页面:
<svg class="icon" aria-hidden="true"> <use xlink:href="#icon-xxx"></use> </svg>
5.实际代码中如何使用iconfont?
- 访问www.iconfont.cn
- 登录你的账号,搜索你想要的图标
- 添加到购物车中
- 为了方便管理,创建一个新的项目,将所有的图标保存在这个项目中
- 使用图标的时候,需要使用引用一些css和js文件,引入在线链接也可以,下载到本地也可以,这里就演示一下,下载到本地如何使用
本地使用
-
点击下载到本地按钮
-
复制我们需要的文件到assets中保存
-
main.js中引入一下
-
修改一下iconfont.css
开始使用 (对应的编码,或class名,或id名,可以iconfont中复制即可)
<template> <div class="third"> <h2>3.iconfont如何使用</h2> <h4>3.1 使用Unicode</h4> <i class="iconfont"></i> <i class="iconfont"></i> <i class="iconfont"></i> <i class="iconfont"></i> <i class="iconfont"></i> <i class="iconfont"></i> <i class="iconfont"></i> <i class="iconfont"></i> <h4>3.2使用font-class</h4> <i class="iconfont icon-shengdantubiao-01"></i> <i class="iconfont icon-shengdantubiao-02"></i> <i class="iconfont icon-shengdantubiao-03"></i> <i class="iconfont icon-shengdantubiao-06"></i> <i class="iconfont icon-shengdantubiao-07"></i> <i class="iconfont icon-shengdantubiao-12"></i> <i class="iconfont icon-shengdantubiao-13"></i> <i class="iconfont icon-shengdantubiao-14"></i> <h4>3.3使用symbol</h4> <svg class="icon" aria-hidden="true"> <use xlink:href="#icon-shengdantubiao-01"></use> </svg> <svg class="icon" aria-hidden="true"> <use xlink:href="#icon-shengdantubiao-02"></use> </svg> <svg class="icon" aria-hidden="true"> <use xlink:href="#icon-shengdantubiao-03"></use> </svg> <svg class="icon" aria-hidden="true"> <use xlink:href="#icon-shengdantubiao-06"></use> </svg> <svg class="icon" aria-hidden="true"> <use xlink:href="#icon-shengdantubiao-07"></use> </svg> <svg class="icon" aria-hidden="true"> <use xlink:href="#icon-shengdantubiao-12"></use> </svg> <svg class="icon" aria-hidden="true"> <use xlink:href="#icon-shengdantubiao-13"></use> </svg> <svg class="icon" aria-hidden="true"> <use xlink:href="#icon-shengdantubiao-14"></use> </svg> </div> </template> <script> export default {}; </script> <style scoped> .third { color: #fff; min-height: 100%; height: auto; text-align: center; } h4 { padding: 60px 0 10px; border-bottom: 1px solid #21262d; } .iconfont{ font-size: 40px; } </style>
运行效果
SVG图标使用进阶
如何优雅的使用SVG?
推荐博客 https://juejin.cn/post/6844903517564436493#heading-5
对于svg图标使用,一开始番茄就是学习这篇博客的,后来自己根据作者的内容,亲自动手实现了一下,有兴趣可以去看看原作者的博客。
我番茄这里就主要讲解一下实际项目如何操作。
1.创建一个组SVG组件
<template> <svg class="svg-icon" aria-hidden="true"> <use :xlink:href="iconName"></use> </svg> </template> <script> export default { name: 'icon-svg', props: { iconClass: { type: String, required: true } }, computed: { iconName() { return `#icon-${this.iconClass}` } } } </script> <style> .svg-icon { width: 5em; height: 5em; vertical-align: -0.15em; fill: currentColor; overflow: hidden; } </style>
2.src文件夹中创建一个Icons文件夹
-
Icons文件夹用于存储和图标有关的文件
-
Icons文件夹中创建一个svg文件夹用于存储我们需要使用到的svg图标
-
Icons文件夹中创建一个index.js 用于引入注册第一步编写的svg组件
import Vue from 'vue'; import SvgIcon from '@/components/SvgIcon';// svg component // register globally Vue.component('svg-icon', SvgIcon); const req = require.context('./svg', false, /\.svg$/); const requireAll = requireContext => requireContext.keys().map(requireContext); requireAll(req);
首先我们创建一个专门放置图标 icon 的文件夹如:@/src/icons,将所有 icon 放在这个文件夹下。
之后我们就要使用到 webpack 的 require.context。很多人对于 require.context可能比较陌生,直白的解释就是require.context("./test", false, /.test.js$/);
这行代码就会去 test 文件夹(不包含子目录)下面的找所有文件名以 .test.js 结尾的文件能被 require 的文件。
更直白的说就是 我们可以通过正则匹配引入相应的文件模块。require.context有三个参数:
directory:说明需要检索的目录
useSubdirectories:是否检索子目录
regExp: 匹配文件的正则表达式了解这些之后,我们就可以这样写来自动引入 @/src/icons 下面所有的图标了
-
mian.js中引用一下 index.js
import '@/icons'; // icon
-
安装svg-sprite-loader
npm i svg-sprite-loader --save
使用这个插件,第一可以精简svg中无用的信息,第二,合并所有的svg文件为一个svg雪碧图
-
配置一下 解析svg的loader
'use strict'; const path = require('path'); function resolve(dir) { return path.join(__dirname, dir); } module.exports = { configureWebpack: { resolve: { alias: { '@': resolve('src') } } }, chainWebpack(config) { // set svg-sprite-loader config.module .rule('svg') .exclude.add(resolve('src/icons')) .end(); config.module .rule('icons') .test(/\.svg$/) .include.add(resolve('src/icons')) .end() .use('svg-sprite-loader') .loader('svg-sprite-loader') .options({ symbolId: 'icon-[name]' }) .end(); } };
-
在iconfont下载好我们需要使用的svg文件保存在svg文件夹即可
-
页面中直接使用(svg文件名替换icon-class)
<svg-icon icon-class="santaClaus" /> <svg-icon icon-class="reindeer" /> <svg-icon icon-class="snowman" />
-
以后使用svg图标下载下来,直接
<svg-icon icon-class="xxx" />
即可。
代码
- 代码博客里面就不上了,想了解的,请访问 github
END
本文写于2021/01/11,番茄本想写成很有深度的博客,奈何能力有限。只能说尽我所能,去编写这篇文章了,不知多年以后,回头再看这篇文章,我会有何感想。┓( ´∀` )┏
- 可以看到运行的效果图中,使用v-for循环展示图片。使用本地图片路径,就会加载不出来。具体原因是因为 vue2是基于webpack进行打包运行的,而webpack会解析它为模块依赖 ,文件路径就会出错 ,所以本地图片在进行使用的时候,推荐使用
-
甘肃教师学苑阅读助手2017自动阅读自动学习免回复代码软件
2017-12-13 22:05:33甘肃教师学苑(http://rwsy.gsres.cn/wx/)的回复代码给...任务栏图标菜单:有退出、自启动、帮助、分享、问题反馈、关于、显示主界面等。 4【使用】:输入账户密码登录即能阅读,自动提取未读文章,并同步显示文章。 -
替换/绘制/分享:让所有 App 拥有 macOS 11 Big Sur 风格的图标
2020-12-22 14:09:44原标题:替换/绘制/分享:让所有 App 拥有 macOS 11 Big Sur 风格的图标前言Hello 各位不大不小的伙伴们,大家好~ 我是@旅客君。北京时间 2020 年 06 月 23 日,在 2020 苹果全球开发者大会上,苹果正式发布了 macOS... -
UI电话图标设计教程
2016-01-27 17:32:33希望这些点点滴滴能帮助广大的UI初学者顺利进入UI设计行业。 写在前面的话 这不是教程,只是毫无保留地分享 大家也看到了我的题目,是的我不希望将我写的这一篇文章称之为“教程”,因为我对我... -
Android 如何隐藏应用程序的图标
2019-01-26 15:12:42Android 如何隐藏应用程序的图标 -
在代码里设置程序的图标
2018-11-13 17:10:14在代码里设置程序的图标 -
视频教程-【吴刚】UI线框图标设计初级入门标准教程-UI
2020-05-28 10:24:00【吴刚】UI线框图标设计初级入门标准教程 业内知名UID、UED、用户体验、... -
SharePoint开发中如何使用Visual Studio给你的Web Part添加图标
2014-06-30 22:39:59SharePoint开发中如何使用Visual Studio给你的Web Part添加图标 -
Fences -让你的桌面图标分组显示,成块状化
2018-11-11 10:41:05Fences -让你的桌面图标分组显示,成块状化 -
Windows编程—控制面板程序显示信息修改(程序图标、名称、链接等)
2020-04-04 01:26:24Windows编程—控制面板程序显示信息修改(程序图标、名称、链接等) 介绍 笔者之前用inno setup打包发现控制面板显示的程序 没有启动程序的图标信息,所以顺带研究了一下控制面板上程序信息的显示。新手看了应该有用。... -
博客帮助文档
2019-12-10 16:52:31博客积分规则 博客等级 ...Markdown帮助 博客积分规则 博客积分是CSDN对用户努力的认可和奖励,也是衡量博客水平的重要标准。博客等级也将由博客积分唯一决定。积分规则具体如下: 1、每发布一篇... -
视频教程-【吴刚】UI安卓主题图标设计标准视频教程-UI
2020-05-28 10:24:00【吴刚】UI安卓主题图标设计标准视频教程 业内知名UID、UED、用户体验、... -
视频教程-【吴刚】UI拟物图标设计初级入门标准教程-UI
2020-05-28 10:24:00【吴刚】UI拟物图标设计初级入门标准教程 业内知名UID、UED、用户体验、... -
千锋ui设计基础视频教程icon图标入门篇
2018-07-24 17:59:06Icon图标设计是ui设计师所要掌握和学习的基础技能。说到icon图标,我们不得不提及icon图标的用途。 一方面,它具有浓厚营销色彩。为什么这么说?当用户首次看到应用时,图标就是他们最先看到的东西之一。当人们在... -
Mac状态栏wifi图标一直闪烁重复连接但是网络正常的解决办法
2018-11-14 18:12:46Mac状态栏wifi图标一直闪烁重复连接但是网络正常的解决办法 -
视频教程-【孙伟】套路的设计-启动图标设计思路与技巧视频教程-UI
2020-05-28 10:24:00【孙伟】套路的设计-启动图标设计思路与技巧视频教程 教学产品线与企业合作项目... -
中小学教师信息技术培训计划
2021-07-07 04:08:30为了促进教学实践与理论的结合,使自己的教育教学行为更能符合时代的要求,教师首先要脚踏实地的抓好自己业务学习,通过自主学习来满足现代教育的需要,全面提高教学质量。以下是学习啦小编为你精心整理的关于中小学... -
视频教程-图标设计-UI
2020-05-28 10:24:00图标设计 专注提供优质教学内容 ... -
js svg 转成文件_【非标题党】SVG 图标看我就够了
2020-11-23 16:58:43在不考虑兼容性(IE8+)的情况下,SVG 应该是目前解决项目中图标问题的最佳方案,没有之一。SVG 在变大变小的情况下不会出现失真(出现锯齿或者看到像素点),也可以像 GIF 一样可以动起来。你也不再会有只是因为同...