一篇文章带你了解SVG图标

SVG图标是SVG图像,用作Web应用程序或移动应用程序内的图标或图像按钮。SVG图标也可以用于徽标。文章说明了SVG图标如何创建自己的SVG图标,以及在何处可以下载高质量的预制SVG图标。

成都创新互联主营恒山网站建设的网络公司,主营网站建设方案,手机APP定制开发,恒山h5小程序制作搭建,恒山网站营销推广欢迎恒山等地区企业咨询

一、SVG图标的优势

图标使用SVG的优点:

1、可以轻松地按比例放大和缩小图标,具体取决于要在应用程序中显示的位置以及显示应用程序的屏幕尺寸。

2、SVG图标具有优于位图图形的优点,即按比例放大或缩小时它们仍然看起来不错。

3、位图图形在按比例放大时趋于像素化,而在按比例缩小时会失去质量(像素)。

二、在Web Apps中使用SVG图标

如在Web浏览器中显示SVG所述,有几种方法可以在Web浏览器中显示SVG,作为HTML页面的一部分。但是,在显示SVG图标时,使用HTML的img元素来显示图标是最容易的,HTML img元素可以轻松地放大和缩小SVG图标的大小。

这是img显示SVG图标元素:

 
 
 
 
  1.  

 

要放大或缩小SVG图标的大小,只需使用CSS width或height样式属性。

下面是添加了CSS Height Style属性的img元素示例:

 
 
 
 
  1.  

 

要在放大或缩小SVG图标时保持其长宽比,应仅为其中一个width 或height - 而不能同时设置这两个值。当仅设置其中一个属性的宽度时,浏览器将沿另一个轴相应缩放SVG图标,以便SVG图标保持其纵横比。

三、自定义SVG图标

有时可能需要创建自己的SVG图标。SVG图标只是包含在它自己的SVG文件中的SVG图像。

下面是一个非常简单的圆形图标,由SVG circle元素组成:

 
 
 
 
  1.  
  2.  
  3.      
  4.          
  5.         项目 
  6.      
  7.      
  8.          
  9.              
  10.              
  11.          
  12.      
  13.  

SVG图标与img元素一起显示时的效果图:

 

但是,当使用img元素显示此SVG图标,并放大和缩小img元素的大小时,SVG图标不会放大或缩小。相反,或多或少会显示SVG画布。

下面是将img CSS Height属性设置为32。

 
 
 
 
  1.         xmlns:xlink="http://www.w3.org/1999/xlink"> 
  2.      
  3.  

 

注:

如何仅显示圆圈的一部分,而不是按比例缩小整个圆圈。

造成此问题的原因是SVG图像文件缺少某些信息。必须为SVG viewBox属性设置一个值 。SVG viewBox属性指定应显示多少SVG画布(在X和Y方向上)。

如何只显示SVG画布的包含圆圈图标的部分?

只想显示SVG画布的包含圆圈图标的部分。该区域从点0,0延伸到点128,128(圆的半径为64,以64,64为中心)。使用SVG Viewbox属性,可以指定只渲染SVG画布的这一区域。

下面是设置了Viewbox值的SVG圆图标的外观。

 
 
 
 
  1.  
  2.              
  3.              
  4.          
  5.          
  6.              
  7.              
  8.          
  9.          
  10.              
  11.              
  12.          

这是显示的SVG图标,高度分别为16、32和48像素:

 

四、总结

本文基于HTML基础,介绍了SVG 图标。什么是SVG图标,以及SVG图标的在实际的优势,如何在Web Apps中使用SVG图标,如何去自定义自己的SVG图标。每一个目录都通过案例分析,运行效果图的展示进行详细讲解。能够加深读者的印象。

欢迎大家积极尝试,有时候看到别人实现起来很简单,但是到自己动手实现的时候,总会有各种各样的问题,切勿眼高手低,勤动手,才可以理解的更加深刻。

本文转载自微信公众号「前端进阶学习交流」,可以通过以下二维码关注。转载本文请联系前端进阶学习交流公众号。

本文题目:一篇文章带你了解SVG图标
新闻来源:http://www.hantingmc.com/qtweb/news49/96099.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联