开放、分享、自由、中立、公平网吧论坛公众号APP(送下载币任务) 微信公众号

天下网吧论坛

 找回密码
 注册账号

QQ登录

只需一步,快速开始

用微信登录

扫一扫,用微信登录

查看: 1939|回复: 0
收起左侧

[经验分享] Element自定义Loading组件/v-loading样式和图标(结合iconfont)

  [复制链接]
发表于 2020-12-25 14:35:11 | 显示全部楼层 |阅读模式 发布于:福建省福州市 电信
近日接到这样的开发需求。
自定义Element的Loading组件的图标和样式。
这里我采用了结合iconfont的方式,直接用iconfont里面的图标来替换Element的Loading组件里默认的图标。
效果如下:
Element自定义Loading组件/v-loading样式和图标(结合iconfont)_天下网吧APP_网吧网咖APP
这里就把实现过程说说吧:

1、首先是让美工UI设计好iconfont并生成导入iconfont的相关代码,如下:
  1. @font-face {
  2.   font-family: "iconfont"; /* project id 2XXXXX3 */
  3.   src: url("//at.alicdn.com/t/font_2******3_wcy8mz6cm0m.eot");
  4.   src: url("//at.alicdn.com/t/font_2******3_wcy8mz6cm0m.eot?#iefix")
  5.       format("embedded-opentype"),
  6.     url("//at.alicdn.com/t/font_2******3_wcy8mz6cm0m.woff2") format("woff2"),
  7.     url("//at.alicdn.com/t/font_2******3_wcy8mz6cm0m.woff") format("woff"),
  8.     url("//at.alicdn.com/t/font_2******3_wcy8mz6cm0m.ttf") format("truetype"),
  9.     url("//at.alicdn.com/t/font_2******3_wcy8mz6cm0m.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. }
  18. .icon-loading:before {
  19.   content: "\e600";
  20. }
复制代码

2、加入选择的动画样式代码iconfont-loading如下:
  1. .iconfont-loading {
  2.   animation-duration: 2s;
  3.   animation-timing-function: linear;
  4.   animation-delay: 0s;
  5.   animation-iteration-count: infinite;
  6.   animation-direction: normal;
  7.   animation-fill-mode: none;
  8.   animation-play-state: running;
  9.   animation-name: rotating;
  10.   display: inline-block;
  11. }
复制代码

3、保存并导入这些样式代码到项目中
比如我是新建了个iconfont.scss
然后在需要使用的页面@import这个scss
4、正式使用:
比如以el-table为例,加入数据载入动画效果,开启v-loading,代码如下:
  1. ...
  2. el-table v-loading="loading" element-loading-text="正在加载,请稍候.." element-loading-spinner="iconfont icon-loading iconfont-loading load-font-class"
  3. ...
复制代码

上面的样式除了load-font-class不在iconfont.scss里面,其他的都在。其中load-font-class样式是修改提示的字体大小的,代码如下:
  1. .load-font-class {
  2.   font-size: 40px;
  3. }
复制代码

赶紧来设置你的签名->玩转天下网吧论坛签名

您需要登录后才可以回帖 登录 | 注册账号   扫一扫,用微信登录

本版积分规则

下载天下网吧手机APP,直接一键登录
您尚未登录,请登陆后浏览更精彩内容!
 注册账号
找回密码

手机版|纯文字版|联系我们|免责声明|网吧论坛 ( __ICP号__ )

GMT+8, 2024-4-20 06:39 , Processed in 1.357165 second(s), 36 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表