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

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

刹那永恒个人博客
刹那永恒个人博客原创
2020年06月24日 13:15:13741浏览

一.背景控制的常用属性

1.渐变色的使用

  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: 500px;
  10. height: 500px;
  11. padding: 30px;
  12. /* background: red; */
  13. border: red 1px dashed;
  14. /* 渐变色 */
  15. /* background: linear-gradient(red, pink); */
  16. /* 渐变色 设置渐变角度45度*/
  17. /* background: linear-gradient(45deg, red, pink); */
  18. /* 渐变色 从左到右 to right 右到左 to left*/
  19. background: linear-gradient(to left, red, pink);
  20. /* 可以多种颜色 */
  21. background: linear-gradient(
  22. to right,
  23. red,
  24. pink,
  25. #666,
  26. #954,
  27. rgba(255, 0, 0, 0.1)
  28. );
  29. /* 裁切掉padding中的颜色 */
  30. background-clip: content-box;
  31. }
  32. </style>
  33. </head>
  34. <body>
  35. <div class="box"></div>
  36. </body>
  37. </html>

2.背景图的使用

  • 背景属性用于定义HTML元素的背景,通常用以下常用属性来控制背景效果

    • background-color:设置颜色
    • background-repea:设置是否平铺
      取值:no-repeat不平铺,repeat-x横向平铺,repeat-y纵向平铺,repeat横向纵向都平铺———默认
    • background-position:设置背景图像的起始位置
      位置的取值可以为像素,也可以使用关键字:top left bottom right center
    • background-size:设置背景图片宽度和高度
    • background-attachment:设置背景是否受到滚动条影响
      (1)scroll会受滚动条的影响,当内容滚动到下方,图片会消失——默认
      (2)fixed不会受滚动条影响,一直保持在视线范围内
    • 当使用简写属性时,属性值的顺序为::

      background-color
      background-image
      background-repeat
      background-attachment
      background-position

  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>02背景图</title>
  7. <style>
  8. .box {
  9. width: 500px;
  10. height: 500px;
  11. border: dashed 1px red;
  12. /* 图片默认是平铺的 */
  13. background-image: url("images/girl.jpg");
  14. /* 禁止平铺只显示一个图 */
  15. /* 背景-重复:关-重复 */
  16. background-repeat: no-repeat;
  17. /* 只朝一个方向重复 横向重复repeat-x 纵向重复 */
  18. /* background-repeat: repeat-y; */
  19. /* 背景的定位 position是位置的意思*/
  20. background-position: 20px 20px;
  21. background-position: left;
  22. background-position: right center;
  23. background-position: 30% 80%;
  24. /* 设置图片的铺设大小 size大小 contain包含-拉伸满*/
  25. background-size: contain;
  26. /* 拉伸 */
  27. background-size: cover;
  28. /* box-shadow: 5px 8px 6px indianred; */
  29. }
  30. .box:hover {
  31. /* 设置悬停鼠标手 */
  32. cursor: pointer;
  33. }
  34. .box2 {
  35. /* 设置边框投影 */
  36. height: 500px;
  37. width: 500px;
  38. background-color: rgb(255, 0, 0);
  39. /* 水平偏移 垂直偏移 扩散阴影 颜色 */
  40. box-shadow: 15px 20px 20px indianred;
  41. /* 设置圆角 */
  42. border-radius: 350px;
  43. }
  44. </style>
  45. </head>
  46. <body>
  47. <div class="box"></div>
  48. <div class="box2"></div>
  49. </body>
  50. </html>

3.精灵图的使用

  • 精灵图原理:网页每加载一个图片都需要对服务器进行一次请求,当网页存在很多图片的时候,对服务器的负荷比较大,可以将很多小图放在一张大图上,当需要使用小图的地方对大图进行背景定位,这样只需要加载一个大图片,对服务器只需要请求一次,可以减少服务器的开销,提升用户体验。
  • 示例如下
  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>03.实战精灵图</title>
  7. <style>
  8. .box1 {
  9. width: 300px;
  10. height: 300px;
  11. background-image: url("./images/jl.png");
  12. /* 背景图是否重负 禁止重复no-repeat; */
  13. background-repeat: no-repeat;
  14. /* background-image: url(images/jl.png); */
  15. border: 1px dashed red;
  16. }
  17. .box2 {
  18. width: 25px;
  19. height: 25px;
  20. background-image: url("./images/jl.png");
  21. background-repeat: no-repeat;
  22. /* 定位精灵图片位置 */
  23. background-position: -50px -50px;
  24. }
  25. </style>
  26. </head>
  27. <body>
  28. <div class="box1"></div>
  29. <div class="box2"></div>
  30. </body>
  31. </html>

三.阿里图标的引用流程

1.首先登陆https://www.iconfont.cn/
2.下载阿里图标

3.Font class 的方式编写代码

  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>阿里字体的引用-Font class</title>
  7. <link rel="stylesheet" href="./font/font_tkizmt6c4ur/iconfont.css" />
  8. <style>
  9. .spa1 {
  10. font-size: 60px;
  11. color: red;
  12. box-shadow: 5px 5px 5px #000;
  13. }
  14. </style>
  15. </head>
  16. <body>
  17. <span class="iconfont icon-icon-test26 spa1"></span>
  18. </body>
  19. </html>
  • 效果如下

4.Unicode的方式编写代码

  • 编写一个css文件并且引入 (注意修改下载的阿里字体的路径)
  1. @font-face {
  2. font-family: "iconfont";
  3. src: url("./font/font_tkizmt6c4ur/iconfont.eot");
  4. src: url("./font/font_tkizmt6c4ur/iconfont.eot?#iefix")
  5. format("embedded-opentype"),
  6. url("./font/font_tkizmt6c4ur/iconfont.woff2") format("woff2"),
  7. url("./font/font_tkizmt6c4ur/iconfont.woff") format("woff"),
  8. url("./font/font_tkizmt6c4ur/iconfont.ttf") format("truetype"),
  9. url("./font/font_tkizmt6c4ur/iconfont.svg#iconfont") format("svg");
  10. }
  11. .iconfont {
  12. font-family: "iconfont" !important;
  13. font-size: 16px;
  14. font-style: normal;
  15. -webkit-font-smoothing: antialiased;
  16. -moz-osx-font-smoothing: grayscale;
  17. }
  • 引入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>阿里字体的引用-Font class</title>
  7. <link rel="stylesheet" href="style.css" />
  8. <style>
  9. .span1 {
  10. font-size: 60px;
  11. color: red;
  12. box-shadow: 5px 5px 5px #000;
  13. }
  14. </style>
  15. </head>
  16. <body>
  17. <span class="iconfont span1">&#xe633;</span>
  18. </body>
  19. </html>
  • 效果如下

总结

阿里字体的引用可以参考阿里字体文件中 demo.html 的说明

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