一、CSS Sprite(雪碧图)

CSS Sprite也叫CSS精灵、CSS雪碧图,是一种网页图片应用处理方式。它允许你将一个页面涉及到的所有零星图片都包含到一张大图中去,这样一来,当访问该页面时,由从前的多次请求变为一次请求。客户端每显示一图片都会向服务器发送请求,所以图片越多请求越多,造成延迟的可能性越大。所以页面有许多icon时,推荐使用CSS Sprite。

CSS Sprite原理:

其实就是把网页中的一些背景图片整合到一张图片文件中,再利用CSS的background-imagebackground-repeatbackground-position属性,对这张大图进行定位。background-position可以用数字能精确的定位出背景图片的位置。

CSS Sprite优点:
1. 利用CSS Sprite能很好地减少了网页的http请求,从而大大的提高了页面的性能,这也是CSS Sprites最大的优点,也是其被广泛传播和应用的主要原因;
2. CSS sprite能减少图片的字节,(网络传输以字节为单位 ,1MB=1024千字节),三张图片大小的总合大于拼成一张图片的大小。
3. 解决了命名困扰,只需要对一张图片命名,而非数十个小图片命名

用一句话来概述就是
“CSS Sprites(图片整合技术) 的目的就是通过整合图片,减少对服务器的请求数量,从而加快页面加载速度。”

怎么制作CSS Sprite图

我们程序员一般通过雪碧图生成工具来制作雪碧图

如何使用雪碧生成工具

1.用PS把需要的图切出来
2.打开CssSprite.exe文件
下载地址:http://download.csdn.net/detail/wx247919365/8641795
3.点击左上角按钮打开图片
4.排列图片
可以点击按钮来排列 ,也可以自己拖动排列,拖动完程序会根据图片的位置生成面积最小的雪碧图
5.是否是手机端
勾选后雪碧图的大小会缩小2倍
6.代码生成
有sass和css两个选项,选择后者。sass是一种CSS预处理语言,能清晰的、结构化的描述文件样式。
7.大图类型要选择png,图片背景色为Transparent透明

<!DOCTYPE html>
<html>
<head lang="en"><meta charset="UTF-8"><title>雪碧图</title><style>div{width: 131px;height: 130px;border: 1px solid red;background-image: url("img/img.png");}.two{width: 131px;height: 162px;background-position: -131px 0;}.three{width: 131px;height: 162px;background-position: -262px 0;}</style>
</head>
<body><div  class="one"></div><div  class="two"></div><div  class="three"></div><div  class="fore"></div><div  class="five"></div><div  class="six"></div>
</body>
</html>

二、滑动门

1.1 为了使各种特殊形状的背景能够自适应元素中文本内容的多少, 出现了CSS滑动门技术。
1.2 使各种特殊形状的背景能够自由拉伸滑动,以适应元素内部的 文本内容,可用性更强。
1.3 最常见于各种导航栏的滑动门。

<!DOCTYPE html>
<html>
<head lang="en"><meta charset="UTF-8"><title>滑动门</title><style>*{margin: 0;padding: 0;}a{margin: 100px;display: inline-block;/*千万不能设置宽*/height: 33px;background: url("img/lTcb_ve.png") no-repeat;padding-left: 15px;color: #fff;text-decoration: none;line-height: 33px;}a  span{display: inline-block;/*千万不能设置宽*/height: 33px;background: url("img/lTcb_ve.png") no-repeat  right;padding-right: 15px;}</style>
</head>
<body><a href="#"><span>首页</span></a><a href="#"><span>开发平台</span></a><a href="#"><span>北京尚学堂</span></a>
</body>
</html>

微信导航栏

<!DOCTYPE html>
<html>
<head lang="en"><meta charset="UTF-8"><title>微信导航栏(一)</title><style>*{margin: 0;padding: 0;}ul{list-style: none;}body{background: url("img/wrap.jpg")  repeat-x;}.nav{height: 75px;}.nav li a{display: block;background: url("img/lTcb_ve.png")  no-repeat;padding-left: 15px;color: #fff;font-size: 14px;line-height: 33px;text-decoration: none;}.nav li a span{display: block;line-height: 33px;background: url("img/lTcb_ve.png") no-repeat right  center;padding-right: 15px;}.nav li a:hover{background-image: url("img/ao.png") ;}.nav li a:hover span{background-image: url("img/ao.png") ;}.nav li{float: left;margin: 0 10px;padding-top: 21px;}</style>
</head>
<body><div  class="nav"><ul><li><a href="#"><span>首页</span></a></li> <li><a href="#"><span>帮助与反馈</span></a></li> <li><a href="#"><span>公众平台</span></a></li> <li><a href="#"><span>开放平台</span></a></li> <li><a href="#"><span>微信支付</span></a></li> <li><a href="#"><span>微信网页版</span></a></li> <li><a href="#"><span>表情开发平台</span></a></li> <li><a href="#"><span>微信广告</span></a></li></ul></div>
</body>
</html>

CSS3—雪碧图和滑动门相关推荐

  1. 【夯实基础--CSS】=> 高级技巧(雪碧图/滑动门/CSS三角形/字体图标(iconfont)等)

    CSS高级技巧 CSS用户界面样式 所谓的界面样式, 就是更改一些用户操作样式, 比如 更改用户的鼠标样式, 表单轮廓等.但是比如滚动条的样式改动受到了很多浏览器的抵制,因此我们就放弃了. 防止表单域 ...

  2. 【无标浮动特性应用实例】二、CSS 精灵(雪碧图、精灵图)三、滑动门 四CSS 定位{相对定位}

    [无标浮动特性应用实例] 总结:浮动脱离文档流不脱离文本流 - 最初只用于在成块的文本内浮动图像为图片和文字之间的对齐方式是基线对齐  要想图文环绕 需要给图片设置浮动 应用实例-两列自适应 实现要点 ...

  3. 原创:CSS3技术-雪碧图自适应缩放与精灵动画方案

    花了一个礼拜完成了慕课网定制的七夕主题效果,其中有一个没实现好的功能,就是雪碧图的自适应缩放 ps: 以下实现都是基于移动端的处理 原图如下: 人物是采用的是雪碧图,通过坐标绝对数据取值 问题很明显, ...

  4. css雪碧图动画,CSS3动画——雪碧图的实现

    前言 作为一个前端的初学者,现在好像已经在nodejs上越跑越偏,之前一直崇拜的CSS3和HTML5动画,如今也好久没有管.因为之前学了好多知识点,但是没有系统的进行总结,就从这篇文章开始,对一些碎片 ...

  5. 使用css3实现雪碧图帧动画

    背景: 此需求是在html界面实现,纯原生,没有像vue生命周期那些东西. 场景: 一个单纯的图片背景,想要在上面加个动图.一瞬间脑子里想到两个方案: 一:最省前端功夫的:ui压缩一个gif图出来 二 ...

  6. CSS3实现雪碧图动画

    注意几点(以下示例): 雪碧图: 由22张图片拼成的,雪碧图的宽度是设置动画元素的22倍 关键帧设置: @keyframes test_anim{     0%{ background-positio ...

  7. css3帧(雪碧图)动画实现

    所谓雪碧图就是一张图,包含了很多小图,可以通过这些小图实现一个动作,如下是一张雪碧图,我们可以通过CSS的animation来设置背景图片的位置,呈现出一种动态效果. 代码实现 .test{ // 务 ...

  8. CSS3 animation属性运用—雪碧图

    一.雪碧图 指CSS中的图片拼合技术,将多个背景图拼合在同一张图片上,在使用时按照需求对图片位置进行改动. 二.animation属性 1. 语法: animation: name duration ...

  9. Web前端知识CSS(清浮动的方法、CSS精灵图、滑动门)

    一.清浮动的方法 清除浮动的方法1.给浮动元素的父级盒子设置一个固定的高度优缺点:不够灵活,适用于高度固定的布局中 ​2.为浮动元素的父级盒子设置浮动优缺点:会产生新的浮动问题 ​3.为浮动元素的父盒 ...

最新文章

  1. 从源码开始运行Bitcoin Core
  2. php curl异步跳转,php curl批处理--可控并发异步
  3. Linux下三大最佳的开源视频播放器
  4. php mysql隔离_mysql隔离级别有几种
  5. 随笔分类 - java高级特性
  6. 深入理解客户的需求至关重要!
  7. Spring Data REST API集成Springfox、Swagger
  8. Weblogic 10.3.5在64位Windows系统下的安装和配置
  9. 一步一步使用Ext JS MVC与Asp.Net MVC 3开发简单的CMS后台管理系统之数据篇
  10. js中split,splice,slice方法之间的差异。
  11. STM32 影子寄存器
  12. java方法的重载 编程题,java面试编程题:重载方法
  13. 携程实时大数据平台实践分享
  14. python使用 photoshop-python-api 调用ps处理批量动作操作
  15. QQ会员注册完整代码
  16. jqGrid排序的两种实现方式
  17. [记录点滴] 小心 Hadoop Speculative 调度策略
  18. OpenLDAP配置坎坷路
  19. 微型计算机输出设备 写出六种,2017计算机一级考试强化训练
  20. 无线传感网络的自适应协作数据传输方法

热门文章

  1. FaceLandmark dataset Augment
  2. Unity Shader-后处理:景深
  3. 马斯克中止推特收购,分手费10亿美元
  4. 微信中被举报的网页怎么打开 怎么打开被拦截的网址
  5. mysql经典46_50个经典SQL语句
  6. 单选框(单选)、复选框(多选)
  7. 孤独的人在孤独的地方...
  8. 我从停电一个月中学到了什么
  9. 中华英才网裁员,五成员工可拿(N+3)*月薪的离职补偿
  10. WebSocket(二) -- 使用原生webSocket实现一个简单的聊天