字体在网页中画ICON图标

用字体在网页中画ICON图标有三种小技巧:

1、用CSS Sprite在网页中画小图标

  实现方法:

  • 首先将小图片整合到一张大的图片上
  • 然后根据具体图标在大图上的位置,给背景定位。background-position:xpos ypos;相对位置为左上角的 0 0,向右向下取负值

 实例部分的html代码及js代码(通过js来改变背景图的位置) 

 1 <ul class="sprite">
 2         <li>
 3             <s class="s-icon"></s>
 4             <a href="">1</a>
 5         </li>
 6         <li>
 7             <s  class="s-icon"></s>
 8             <a href="">2</a>
 9         </li>
10         <li>
11             <s class="s-icon"></s>
12             <a href="">3</a>
13         </li>
14         <li>
15             <s class="s-icon"></s>
16             <a href="">4</a>
17         </li>
18
19     </ul>

html

<script type="text/javascript">
        $(document).ready(function(e) {
            var sHeight=$(".sprite s").height();
            var  sWidth=$(".sprite s").width();
            var sLi=$(".sprite").children("li");

            sLi.each(function() {
                var $this=$(this);
                var sIndex=$this.index();
                $this.children("s").css("background-position","0 -"+sHeight*sIndex+"px");

                $this.hover(function(e) {
                    $this.children("s").css("background-position", -sWidth+"px"+" -"+sHeight*sIndex+"px");
                },function(){
                    $this.children("s").css("background-position","0 -"+sHeight*sIndex+"px");
                    });
            });
        });
    </script>

js

酌情正确的使用CSS Sprites

CSS Sprites好处:

  • CSS Sprites(图片整合技术) 的目的是通过整合图片,减少对服务器的请求数量,从而加快页面加载速度。

CSS Sprites坏处

  • 拼合图片的时间成本会增加(一般拼合是将状态一样的图片拼合在一起,剩余不同状态的再合为一张图片,那么可能一个图片状态的改变,那么整张图片就需要重新制作保存)
  • 编码和维护的时间成本会增加,型的 sprite 会导致无尽地测试和图片状态的重新摆放。
  • 错误的使用sprites会影响可访问性。

图片优化
  一、对于非动画的GIF更建议使用PNG8因为它同样能做到一样的效果,而且能为你节省10%-30%的文件体积。
  二、Photoshop相比起Fireworks,导出同等质量的PNG图片,体积会稍大。而Fireworks虽然做了相应压缩优化,但没有达到最优秀的压缩。
  三、我所知的设计软件,对于PNG图片的处理都没做到最优秀的压缩,图片体积还有一定的压缩空间。可以尝试使用下面介绍的”图像优化工具” 做无失真的压缩优化。
  四、图片体积及尺寸方面,建议体积保持在100K以内(较为符合国情最佳请求SIZE),size为800px(最佳尺寸)。

CSS Sprites图片切割术
  三、CSS Sprites图片中把颜色较近或相同的组合在一起可以降低颜色数,因为少色数的图片文件体积会相对的小。
  四、size相同的CSS Sprites图片中留有较大空隙,某程度上多数情况会增大了体积,所以CSS Sprites的图片不要有空隙。
  五、在size相同的CSS Sprites图片中,垂直排列的图片会比水平排列的文件体积要大。
  六、在CSS Sprites图片中,水平排列的图片会比垂直排列的文件体积要大。
  九、黄金切割位:在CSS Sprites图片的最右或左边为最灵活动位置最适宜摆放文本前的icon,因此不会受到其它CSS Sprites图片干预,也不需要预留一定的行宽。

—————————————————————————————我是分割线———————————————————————————— 

2、font+HTML在网页中画ICON小图标

使用方法:登录https://icomoon.io按需选择自己需要的图标,导出图标到本地,会有一个demo的文件,找到fonts文件夹,里面的四个文件即自己所需的字体

预览下载字体

 

下载下来的Demo文件,选取fonts

点击Get Code,获取图标对应的十六进制编码

编码在HTML Entity中

以上准备工作做好之后就可以进行编码

1 <ul class="layout">
2         <li><a href=""><i style="color: #efe0ce;" class="imooc-icon"></i></a></li>
3         <li><a href=""><i style="color: #ef7073;" class="imooc-icon"></i></a></li>
4         <li><a href=""><i style="font-size:30px;" class="imooc-icon"></i></a></li>
5         <li><a href=""><i style="font-size:60px;" class="imooc-icon"></i></a></li>
6         <li><a href=""><i style="font-size:90px;" class="imooc-icon"></i></a></li>
7 </ul>

html

 1 @font-face{
 2         font-family: "icon";
 3         src:url("../fonts/icomoon.eot");
 4         src: url("../fonts/icomoon.eot?#iefix") format("embedded-opentype")
 5              ,url("../fonts/icomoon.woff") format("woff")
 6              ,url("../fonts/icomoon.ttf") format("truetype")
 7              ,url("../fonts/icomoon.svg") format("svg");
 8         font-weight: normal;
 9         font-style: normal;
10     }
11
12     .imooc-icon{
13         font-family: "icon";
14         font-style: normal;
15         font-weight: normal;
16         font-size: 64px;
17         -webkit-font-smoothing: antialiased; /*使页面上的字体抗锯齿*/
18         -moz-osx-font-smoothing: grayscale;
19     }

css

好处:

1、灵活性:轻松改变图标的颜色或其他css效果

2、可扩展:改变图标的大小,就像改变字体大小一样

3、矢量性:缩放图标不会影响清晰度

4、兼容性:字体图标支持所有现代浏览器(包括IE6)

5、本地使用:通过添加定制字体到本系统,可以在各种设计和编辑应用程序中使用

—————————————————————————————我是分割线————————————————————————————

3、font+css在网页中画ICON小图标

第三种方法也是利用上面的icomoon,不过这一种是利用:before伪元素,具体编码就如:

时间: 2024-10-04 04:42:05

字体在网页中画ICON图标的相关文章

在网页中制作icon图标

用字体在网页中画icon图标 第一步:获取字体资源IconMoon网站https://icomoon.io iconMoon中有很多免费小图标可用,还能设置下载图标的使用属性(通过网站中设立的按钮preferences来设置).它有“Use i”使用<i>标签来画图标:“Use Attribute Selectors”使用属性选择器:“Use a Class”使用class属性. 使用<i>标签时,会将font-family等字体值赋值给所有<i>标签.使用属性选择器时

在网页中画Icon小图标

在网页中画Icon小图标. 现代网页中,绝大部分都采用了Icon小图标的方式.其积分大致分为三类,CSS Sprite,font+HTML,font+CSS. CSS Sprite:又称为CSS雪碧,把网页中零星背景图片整合在一张图片文件夹中,再利用CSS的背景图片技术定位到要显示的位置.优点:减少文本体积和服务器请求次数,从而提高效率. 知识点:background-image background-position(向下向右取的是负值). 特点:1,相对单个图标,节省文本体积和服务器请求次数

在网页中使用icon图标:png、svg、iconfont

在写个人简历时,好多地方都要用到各式各样的icon图标,不仅是为了样式的美观,更是能够为访客提供很好的指引,比如: 放上这些图标,总比干巴巴的 ‘点击右侧进入详情’ 好⑧ (在做建立网站的时候,本来是想用svg一把梭的,简单好用,也不知道为啥突然觉得,哎,都用了这么久svg了,试试png吧:) 结果一发不可收拾,大概二十多张png图片,还没有用雪碧图,我脑壳痛) (还是建议用下面提到的svg或者iconfont+css/html吧) 方式1:png/jpg... 这个就不用多说了,放在span里

怎么在网页中加入ICO图标

1.首先制作一个16x16的icon图标,命名为cssbbs.ico(这里的名字可以随便改!),放在根目录下.2.然后将下面的代码嵌入head区:<link rel="icon" href="cssbbs.ico" type="image/x-icon" /><link rel="shortcut icon" href="cssbbs.ico" type="image/x-ico

网页中多个图标在一张图片上,使用css将各图标显示

现在的网页中显示很多图标算是常态,发现项目中页面上用到的图标都是单个图标单个文件,用的时候直接往页面上挂,这确实很常态. 如果,网站是挂在外网上,或者网速过低,又大量使用图标的情况下,由于浏览器和服务器的并发连接数是受限的,通常是4~8个,那么图标显示过慢或者超时的情况就会发生. 当然了,像采用CDN,或者按照浏览器的并发数对图片文件进行域名分散存储处理也是再好不过的,但不是都有这样的条件. 一般都会把图标文件做的尽可能小,尽管如此,1张50k的文件比起50张1k文件下载起来还是很有优势的. 那

bootstrap在input框中加入icon图标

<form class="form-horizontal"> <div class="form-group has-feedback"> <div class="username"> <span class="fa fa-user-circle-o fa-2x form-control-feedback"></span> <input type="te

字体在网页中的应用

svg其实不算新标准吧,在dom标准定义的时候好像就有了,记得在高级编程那本书上看过的,但一直到html5,才是所有的浏览器都支持了,我们使用一张svg图的时候,最简单的用法就是像使用传统的图片一样去使用,还有就是svg跟css结合的使用,这个个人接触的少就不在此乱扯了,主要写写字体方面的. 其实字体呢就是自定义在css中content(content的使用可以去w3c看看,要配合before跟after伪类一起的,指定一个url作为内容),而这个url指向的是一个自定义的font,具体代码如下

用Raphael在网页中画圆环进度条

原文 :http://boytnt.blog.51cto.com/966121/1074215 条状的进度条我们见得太多了,实现起来比较简单,它总是长方形的,在方形的区域里摆 放就不太好看了.随着css3的出现,圆环状的进度条开始用得越来越多,不过由于IE6/7/8不支持css3,我们只能换其它方法来实现.本文就采用 Raphael来画一个,这个组件对svg和vml进行了一个统一的封装,根据浏览器使用不同的技术实现绘制,因此IE也能用. 先上效果图: 效果还不错吧?代码其实也不复杂,抛砖引玉一下

在网页中添加qq客服

在网页中添加qq图标,点击图标可以直接进入qq聊天界面,比想象中的简单很多,代码如下: <a target="_blank" href="tencent://message/?uin=1434677239&Site=www.baidu.com&Menu=yes" title="在线客户"><img src="online_arrow.gif" width="50" heig