博客列表 >背景控制的常用属性 精灵图原理及用法 阿里字体图标的完整引用流程

背景控制的常用属性 精灵图原理及用法 阿里字体图标的完整引用流程

写代码的张先森
写代码的张先森原创
2020年06月22日 17:32:141087浏览

一.背景控制的常用属性


属性 说明 写法示例
background-color 添加背景颜色 background-color:red;
background-clip 背景裁切 background-clip: content-box;
background: linear-gradient(); 背景渐变 background: linear-gradient(45deg, red, yellow);
background-image 添加背景图片 url(“图片路径”) background-image: url("girl.jpg");
background-repeat 设置是否及如何重复背景图像 background-repeat: no-repeat;
background-attachment 置背景图像是否固定或者随着页面的其余部分滚动 background-attachment: fixed;
background-position 背景定位 background-position: center right;
background-size 规定背景图像的尺寸 background-size: contain;

注:以上有些属性有多个可设置的属性值,请查阅css手册具体查看每个属性对应的属性值都是什么用法,有什么作用。

下面列举一段示例代码,有一些属性的具体用法供参考,详细看注释:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8" />
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  6. <title>背景</title>
  7. <style>
  8. .box {
  9. width: 300px;
  10. height: 300px;
  11. /* border: 1px solid #000; */
  12. border-radius: 15px;
  13. /* 1.背景色 */
  14. background-color: lightgreen;
  15. /* 因为内边距是透明的,只能设置宽度不能设置样式,因此,背景色默认可以从内边距透出来 */
  16. /* padding: 20px; */
  17. /* 2.控制背景的覆盖范围限制在内容区,裁切 */
  18. background-clip: border-box;
  19. /* background-clip: content-box; */
  20. /* 3.渐变 deg为渐变角度 颜色顺序就是渐变顺序*/
  21. /* background: linear-gradient(red, yellow);
  22. background: linear-gradient(45deg, red, yellow);
  23. background: linear-gradient(to right, red, yellow);
  24. background: linear-gradient(
  25. to left,
  26. rgba(255, 0, 0, 0.5),
  27. white,
  28. yellow,
  29. white,
  30. yellow
  31. ); */
  32. /* 4.背景裁切 */
  33. /* background-clip: content-box; */
  34. /* 5.背景图片 url("图片路径")*/
  35. /* background-image: url("girl.jpg"); */
  36. /* background-repeat: no-repeat; */
  37. /* background-repeat: repeat-y; */
  38. /* background-attachment: fixed; */
  39. /* 6.背景定位: 位置 */
  40. /* background-position: 50px 60px; */
  41. /* background-position: right center; */
  42. /* background-position: center right; */
  43. /* 只写一个,第二个默认就是center */
  44. /* background-position: left; */
  45. /* background-position: 50% 20%; */
  46. /* 只写一个,第二个默认就是50% */
  47. /* background-position: 50% 50%; */
  48. /* 7.规定背景图像的尺寸 */
  49. background-size: contain;
  50. background-size: cover;
  51. /* 简写 */
  52. background: violet;
  53. background: url("mao.jpg") no-repeat center;
  54. position: relative;
  55. top: 20px;
  56. left: 30px;
  57. /* box-shadow: 5px 8px 10px #888; */
  58. }
  59. .box:hover {
  60. /* 外发光 */
  61. box-shadow: 0 0 8px #888;
  62. cursor: pointer;
  63. }
  64. </style>
  65. </head>
  66. <body>
  67. <div class="box"></div>
  68. </body>
  69. </html>

添加背景图片加一些盒子样式效果图:

二.精灵图的原理与用法


1.原理:精灵图就是把网页中一些背景图片整合到一张图片文件中,利用对背景图片的一些操作属性组合进行背景定位。

优点就是减少网页对服务器发起的http请求,快了网页访问速度,提升用户体验。

2.用法:
(1)首先我们得到一张我们需要用的精灵图 例

(2)我们想要确定每个小图标在这个精灵图文件中的大小,我们就得量小图标的尺寸,这里我们推荐一款谷歌浏览器标尺插件 Page Ruler Redux 下载后把crx文件拖拽到 管理拓展程序下即可安装 这样我们可以量到每个小图标的宽高

(3)然后我们利用css的背景属性来控制位置取到精灵图上的任意图标
代码:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8" />
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  6. <title>背景实战: 精灵图/雪碧图</title>
  7. <style>
  8. .box1 {
  9. width: 500px;
  10. height: 400px;
  11. border: 1px solid #000;
  12. /* 添加背景图片 */
  13. background-image: url("1.png");
  14. /* 设置背景图片不重复 */
  15. background-repeat: no-repeat;
  16. /* 设置背景定位 */
  17. background-position: 50px 20px;
  18. }
  19. .box2 {
  20. /* 小图标 */
  21. width: 110px;
  22. height: 110px;
  23. /* 添加背景精灵图 */
  24. background-image: url("1.png");
  25. /* 不重复 */
  26. background-repeat: no-repeat;
  27. /* 利用定位属性定位到精灵图上的任意小图标 */
  28. background-position: -220px -110px;
  29. }
  30. </style>
  31. </head>
  32. <body>
  33. <div class="box1"></div>
  34. <div class="box2"></div>
  35. </body>
  36. </html>

效果图:

三.阿里字体图标的完整引用流程


阿里云字体图标是非常好用的,我们在平时的开发中可以用一些阿里云免费的字体图标,下面我们就说一下怎么使用阿里云字体图标

1.打开阿里云矢量图标库官网 https://www.iconfont.cn

2.使用官网指定的登录方式进行登录

3.登录后我们可以再搜索框搜索我们想要的图标,然后点购物车图标添加入库

4.然后点击购物车 加入项目 没有项目我们可以手动创建项目



5.添加完项目后,会自动跳转到“我的项目”界面(也可以通过顶部菜单【图标管理】-【我的项目进入】)

6.在我的项目里 可以对单个图标进行下载,也可以下载整个图标项目
阿里云字体图标在项目中有三种引用方式 我们推荐使用第一种引用方式,因为第一种引用方式的兼容性很好

7.具体在项目中怎么引用,使用帮助里有很详细的教程

注:示例中的代码复制后,请把路径更改为正确的路径,否则会找不到文件

小结:


1.熟练运用背景的一些常用属性
2.建议看一下css的手册,具体看下不同背景属性对应的属性值作用和写法
3.会对精灵图定位,取到精灵图的任意图标
4.会使用阿里云矢量图标库的图标,会对我们开发提供很大的方便

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议