图标

作者: 好奇男孩 | 来源:发表于2018-05-13 02:13 被阅读10次

icon 的各种实现方式

a.使用 image 实现

注意事项:

  • img 的大小设置
    可以只设置宽度/高度,图片会自适应缩放
  • img 的 vertical-align
  • 请求数过多
    因为每一个请求都是需要花时间去建立的,HTTP 1.1 时代,客户端(浏览器)是慢的,但如果升级到了 HTTP 2,100个请求跟1个请求是差不了多少的
    在服务器端(server),比如是用 php、java 实现的后端,请求过多,一般会导致线程过多,或大或小都会产生一定的压力
    另外,请求过多,对网站流量也会有一定的影响,流量要要花钱

b.CSS Sprite(css精灵/雪碧)

指将不同的图片/图标合并在一张图上,在使用时只显示出所需要的该图片的一部分,并且所有图片的引用链接都是一样的,从而能够减少向请求,提高网页加载性能。

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>JS Bin</title>
    <style>
        .icon{
            /*border:1px solid red;*/
            width: 20px;
            height: 20px;
            background-image: 
              url("http://ww1.sinaimg.cn/large/006JM2pKgy1fp3942tx3lj301800m0j9.jpg") ;
            background-repeat: no-repeat;
            display: block;
        }
        .phone{
            background-position: -22px   0;
        }
        .time{
            background-position:  0px 0px;
        }

    </style>
</head>
<body>
    <span class=" icon phone"></span>
    <span class=" icon time"></span>
</body>
4.png

使用方法:

  • 现在可以使用命令行:
  • google:npm css sprites,可以找到 sprity。通过文档中的 sprity-cli 来查看如何在命令行中使用它* 安装完成后,比如使用命令 sprity create build resource/*.png -s style.css。这里意思是将 resource 目录下的 png 格式图片生成 scripts 以及 名为style.css的文件,并放在 build 目录下。这样我们就可以在代码中直接引用了,直接加上对应的 icon 类名即可

c.Icon Font 把字体做成图标

1.先设计新的字体:
可以通过 iconfont 来制作
2.形成字体文件(.eot、.ttf等供各种浏览器识别的字体文件)
3.利用无意义的unicode码与各个字体做好对应关系再定义类名形成CSS文件
4.利用线上或是本地链接方式,调用已定义好的该字体样式

  <style>
 @font-face {
  font-family: 'pengronghui';  /* project id 581087 */
  src: url('//at.alicdn.com/t/font_581087_je7dxqjgbtaf9a4i.eot');
  src: url('//at.alicdn.com/t/font_581087_je7dxqjgbtaf9a4i.eot?#iefix') format('embedded-opentype'),
  url('//at.alicdn.com/t/font_581087_je7dxqjgbtaf9a4i.woff') format('woff'),
  url('//at.alicdn.com/t/font_581087_je7dxqjgbtaf9a4i.ttf') format('truetype'),
  url('//at.alicdn.com/t/font_581087_je7dxqjgbtaf9a4i.svg#iconfont') format('svg');
}
    p,h1{
      font-family:pengronghui;
      font-size:40px;
      color:red;
      text-shadow:1px 1px 4px rgba(255,0,0,0.4);
    }
  </style>
</head>
<body>
  <p>&#xeb78;</p>
  <h1>&#xe8c8;</h1>
</body>
</html>
6.png
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>JS Bin</title>
  <link rel="stylesheet" href="//at.alicdn.com/t/font_581087_qb1kd9gpf7x03sor.css">
</head>
<body>
<span class="iconfont icon-moon"></span>
  <span class="iconfont icon-rain"></span>
</body>
</html>
8.png

c.SVG(推荐方法)

  • svg 可以作为图像的地址直接传入:<\img src="svg">,但是这样依然会造成请求数过多*
  • 但是可以使用 SVG "sprites";
    svg-sprite
    优点:
    1.它是以标签的形式来组织所有的图片的(移动端首选 )
    2.可以方便的修改 icon 的大小、颜色,缩放没有锯齿

d. 用 CSS 画icon(不推荐使用)

要了解可参考:CSS ICON

相关文章

  • PS图标学习1——图标的分类及设计原则

    什么是图标? 图标通常分为两种:应用图标和功能图标。 应用图标类型 功能图标类型 图标设计原则 应用图标 可识别性...

  • 图标常用小tips

    一、图标样式分类 将图标按照样式进行分类,可以分为线框图标、填色图标、多色图标。 二、图标文件格式分类 图标的文件...

  • 设计资源

    图标集 google官方的图标集 pixelbuddha 买图标 iconscont 买图标 阿里巴巴矢量图标库 ...

  • 在线生成安卓APP图标

    在线生成安卓APP图标生成 图标在线 在线图标 安卓图标 生成图标 https://icon.wuruih...

  • day 1

    图标划分: 1.像素图标 2.剪影图标 3扁平图标 4.微质感图标 5.拟物化图标 寿司APP APP设计规范

  • 编程大白话之-在uni-app使用iconfont图标

    uniapp开发中有多种使用图标的方法,例如:图标组件已有的图标,去阿里图标库下载喜欢的图标,或直接使用图标图片等...

  • 【Appetite】ionic3实录(三)修改自定义图标

    常见图标有图像图标和字体图标两种,在移动端,字体图标对比图像图标有不少优点,所以一般采用字体图标为主。而字体图标的...

  • ui设计图标类型有哪几种?

    UI图标一种分为三种,这三种分别是:写实图标又称拟物化图标、微质感图标又称2.5d图标、扁平化图标又称2d图标。 ...

  • 趁早·PPT模拟人生100天 Day 27:当Emoji占领PP

    前情回顾:图标中的线性图标、面性图标、混合图标、拟物图标几大类。 本课要点:最好玩的Emoji表情图标,适用于娱乐...

  • UI设计教程之如何设计风格统一的图标

    APP中的图标的类型多种多样,最常出现的有:面形图标,线形图标,扁平描线图标。文章主要讲这3种图标。图标的形式没有...

网友评论

    本文标题:图标

    本文链接:https://www.haomeiwen.com/subject/zhekdftx.html