使用Visual Studio创建图片精灵(Image Sprite)——Web Essential
原文:Creating Image Sprite in Visual Studio - Web Essential
译者注:有关图片精灵的信息请参阅http://baike.baidu.com/view/2173476.htm。
通过本文,可以学习到如何使用Visual Studio的Web Essential扩展来创建图片精灵。假如你有一个网站,使用了大量的图像,且每个图像都是通过独立的请求加载的,那么请求的数量就会增加,这样,网站速度就会变慢。而这就需要进行优化,以加快网站速度。
图片精灵是一种将多个图像合成为一个大图像的排序技术,这样,网站就只需要加载一个文件而不是多个文件,从而可以加快网站速度。
下面先来了解一下Web Essential是什么,然后再看看如何在Visual Studio IDE中创建图片精灵。
Web Essential
Web Essentials为Visual Studio扩展了一些新功能,不过已经被Web开发人员遗忘很多年了。
如果你要编写CSS、HTML、JavaScript、TypeScript、CoffeeScript或者LESS,那么,你将会发现有许多有用的功能可以让你作为一个开发人员的生活更轻松。
该扩展主要面向的是所有使用Visual Studio的Web开发人员。它在2012年8月由Mads Kristensen首次提出。
基于Visual Studio 2013的Web Essentials 1.7现在让图像处理比以往简单了很多。
如果你还没有将该扩展安装到你喜爱的Visual Studio IDE中,那么你将会错过很多功能,你可以从快速的从这里去下载它。
现在,让我们来探讨一下如何去创建图像精灵。
将粘贴板中的图像粘贴到Visual Studio编辑器中
在Web Essential包含此功能之前尽管有许多不同的方法来创建图片精灵,但使用Visual Studio Web Essential扩展可以让该工作比之前的方法更简单。下面,按照以下步骤去做。
第一步:选择图片并右击选择的图片>Web Essentials>Create Image Sprite...
在单击“Create image sprite”后,它会让你输入精灵名称,输入名称并单击保存按钮。默认情况下,新的精灵会被添加到images目录。
第2步:展开精灵树(如上图),会立即在精灵树下看到.png文件。这些.png文件实际上就是单一图像中所包含的我们在创建精灵时选择的小图片。如下图。
第3步:展开MySprite.png文件,会找到.css、.less、.map和.scss文件,这些文件用途不大,只是精灵的备份,不过将他们留在项目里很重要。
如果打开MySprite.png.css文件,会看到一些CSS代码,可以将这些代码复制到原来的样式文件之中(site.css)。以下是MySprite.png.css文件的屏幕截图。
在上图中可以看到每一个小图片的定义,这些小图片是根据他们在大图片的位置来进行显示的。
将这些样式复制到Site.css文件或者其他的样式文件。
第4步:现在,为了能使用这些CSS,也就是新的图片精灵,需要在DOM中使用以下标记:
<div class="orderedList0"></div>
<div class="orderedList1"></div>
<div class="orderedList2"></div>
<div class="orderedList3"></div>
<div class="orderedList4"></div>
可以看到,在这里使用了类选择器来将CSS文件映射到样式。
我为这录了一个Hindi视频。如果你不了解Hindi,可以查看以上步骤。
译者注:要看视频请访问源地址。
作者:Abhimanyu Kumar Vatsa, Microsoft MVP in ASP.NET/IIS | Author | IT Faculty | Student of M.Tech. IT, works as an Assistant Lecturer in Coxtan College, Bokaro. Know More
使用Visual Studio创建图片精灵(Image Sprite)——Web Essential的更多相关文章
- 使用Visual Studio创建简单的自己定义Web Part 部件属性
使用Visual Studio创建简单的自己定义Web Part 部件属性 自己定义属性使用额外的选项和设置拓展你的Web part部件.本文主要解说怎样使用Visual Studio创建简单的自己定 ...
- 使用Visual Studio创建映像向导(Image Sprite)——Web Essential
原版的:Creating Image Sprite in Visual Studio - Web Essential 译者注:有关图片精灵的信息请參阅http://baike.baidu.com/vi ...
- 【翻译】使用Visual Studio创建Asp.Net Core MVC (一)
This tutorial will teach you the basics of building an ASP.NET Core MVC web app using Visual Studio ...
- 用Visual Studio创建集成了gtest的命令行工程
gtest代码库中的sample代码 在gtest的代码库中,包含了10个sample的代码,覆盖了gtest的常见用法,sample的代码位于以下文件夹: gtest\samples 由于gtest ...
- 使用Visual Studio 创建新的Web Part项目
使用Visual Studio 创建新的Web Part项目 Web Part是你将为SharePoint创建的最常见的对象之中的一个.它是平台构建的核心基块. 1. 管理员身份打开Visual St ...
- 使用Visual Studio 创建可视Web Part部件
使用Visual Studio 创建可视Web Part部件 可视Web Part部件是很强大的Web 部件.它提供内置设计器创建你的用户界面. 本文主要解说怎样使用Visual Studio 创建可 ...
- Visual studio 创建项目失败vstemplate
Visual studio 创建项目失败 提示 the vstemplate file references the wizard class 'Microsoft.VisualStudio.WinR ...
- Xamarin 中Visual Studio创建项目提示错误
Xamarin 中Visual Studio创建项目提示错误 错误信息:Object reference not set to an instance of an object 出现这种情况,是由于没 ...
- Visual studio 创建文件时自动添加备注
Visual studio 创建文件时自动添加备注 描述 要求每回添加一个类,普通类或单元测试类文件头自动添加备注, 比如:Copyright, FileName, Author and so on. ...
随机推荐
- Python3 SMTP发送邮件
SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式. python的smtplib提供了一 ...
- 使用Docker搭建GitLab
使用docker-compose快速启动GitLab.(当然前提是你先安装docker-compose,安装方式见博客:http://blog.csdn.net/yulei_qq/article/de ...
- Lucene 6.0下使用IK分词器
Lucene 6.0使用IK分词器需要修改修改IKAnalyzer和IKTokenizer. 使用时先新建一个MyIKTokenizer类,一个MyIkAnalyzer类: MyIKTokenizer ...
- 浅析"Sublabel-Accurate Relaxation of Nonconvex Energies" CVPR 2016 Best Paper Honorable Mention
今天作了一个paper reading,感觉论文不错,马克一下~ CVPR 2016 Best Paper Honorable Mention "Sublabel-Accurate Rela ...
- 【伯乐在线】HashMap的工作原理
本文由 ImportNew - 唐小娟 翻译自 Javarevisited.欢迎加入翻译小组.转载请见文末要求. HashMap的工作原理是近年来常见的Java面试题.几乎每个Java程序员都知道Ha ...
- UISearchController替换UISearchDisplayController
随着iOS 的升级,iOS 7的占有率更低了.Xcode 升级到Xcode 8之后,对iOS 应用支持的最低版本,iOS 7也被抛弃了.我在新项目中也是最低支持到iOS 8,因此工程里也是各种警告.首 ...
- Android fragment(片段)构建灵活的UI
在以支持多种屏幕尺寸为目标设计应用时,您可以在不同的布局配置中重复使用您的fragment 从而根据可用的屏幕空间优化用户体验. 例如,在手机设备上,由于采用单窗格用户界面,因此可能更适合一次只显示一 ...
- Unity UGUI图文混排源码(四) -- 聊天气泡
这里有同学建议在做聊天气泡时,可以更改为一张图集对应多个Text,这样能节省资源,不过我突然想到每个Text一个图集,可以随时更换图集,这样表情图更丰富一些,于是我就先将现有的聊天demo改为了聊天气 ...
- 假设一个大小为100亿个数据的数组,该数组是从小到大排好序的,现在该数组分成若干段,每个段的数据长度小于20「也就是说:题目并没有说每段数据的size 相同,只是说每个段的 size < 20 而已」
假设一个大小为100亿个数据的数组,该数组是从小到大排好序的,现在该数组分成若干段,每个段的数据长度小于20「也就是说:题目并没有说每段数据的size 相同,只是说每个段的 size < 20 ...
- JAVA面向对象-----extends关键字
继承使用extends关键字实现 1:发现学生是人,工人是人.显然属于is a 的关系,is a就是继承. 2:谁继承谁? 学生继承人,发现学生里的成员变量,姓名和年龄,人里边也都进行了定义.有重 复 ...