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

php中文网
发布: 2016-06-24 11:31:58
原创
1931人浏览过

现在的网页中显示很多图标算是常态,发现项目中页面上用到的图标都是单个图标单个文件,用的时候直接往页面上挂,这确实很常态。

如果,网站是挂在外网上,或者网速过低,又大量使用图标的情况下,由于浏览器和服务器的并发连接数是受限的,通常是4~8个,那么图标显示过慢或者超时的情况就会发生。

当然了,像采用CDN,或者按照浏览器的并发数对图片文件进行域名分散存储处理也是再好不过的,但不是都有这样的条件。

一般都会把图标文件做的尽可能小,尽管如此,1张50k的文件比起50张1k文件下载起来还是很有优势的。

那么,要如何将一个图片中的单个图标显示在页面中,因为没有切分图片的功能。

立即学习前端免费学习笔记(深入)”;

 

首先,假设我们的图标图片是tree view中常用的:

 

做一个简单的页面,放两个div,需要在这两个div上分别显示文件夹和文件图标。

<!DOCTYPE html><html>    <head>        <meta charset="utf-8">        <style>        </style>    </head>    <body>        <div></div>        <div></div>    </body></html>
登录后复制

 

显示方法很简单,就是将元素的大小设成图标的大小,图片作为元素的背景,设置图片的left和top让对应的图标被显露出来。

慧中标AI标书
慧中标AI标书

慧中标AI标书是一款AI智能辅助写标书工具。

慧中标AI标书 120
查看详情 慧中标AI标书

定义一个默认的样式,规定元素的大小,这里的图标是32*32,照样设置元素的大小。

            .tree-default{                width:32px;                height:32px;            }
登录后复制

定义文件夹图标的显示样式,就是讲图标图片作为背景,按照图标的位置调整left和top坐标值。

            .tree-folder{                background: url("images/tree_icons_32px.png") -260px -4px no-repeat;            }
登录后复制

定义文件图标的显示样式,调整文件图标所在的位置。

            .tree-file{                background: url("images/tree_icons_32px.png") -100px -68px no-repeat;            }
登录后复制

再给元素设上样式。

        <div class="tree-default tree-file"></div>        <div class="tree-default tree-folder"></div>
登录后复制

完成后的效果:

 

这样的处理也不是没有条件,单张图片也要尽可能的压缩,不是所有的图标都在一张图片上,可将常用的放在一张图片上,如果过多可分成多张图片放置。

 

所有代码:

                                    <div class="tree-default tree-file"></div>        <div class="tree-default tree-folder"></div>    
登录后复制

 

HTML速学教程(入门课程)
HTML速学教程(入门课程)

HTML怎么学习?HTML怎么入门?HTML在哪学?HTML怎么学才快?不用担心,这里为大家提供了HTML速学教程(入门课程),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号