首页 > 其他分享 >【scss】基于:empty伪类的空元素回显及加载状态

【scss】基于:empty伪类的空元素回显及加载状态

时间:2024-05-27 17:34:57浏览次数:11  
标签:scss loading 回显 伪类 height grid block include empty

mixin.scss

/** 空内容
  height:占位高度
**/
@mixin empty-block($height:220px) {
  display: block;
  position: relative;
  width: 100%;
  min-height: $height;//图片高度
  background-image: url('~@/assets/images/default-img/no-data.svg');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: auto $height;
}

/** 空内容
  grid:是否是grid布局,如果在grid布局下,占满
  height:占位高度
**/
@mixin empty($grid: false, $height: 100%) {
  &:empty::before {
    content: '';
    @if $grid {
      grid-column: 1 / -1;
      grid-row: 1/-1;
    }
    @include empty-block($height);
  }
}

/** loading **/
@keyframes common-loading{
  0% {
    filter:opacity(0.25);
  }
  100%{
    filter:opacity(1);
  }
}

@mixin loading(){
  animation: common-loading 1.4s ease infinite
}

应用一:表格
common.scss

/* 表格-空 */
.empty-table {
  .el-table[loading="true"] .el-table__empty-text{
    @include loading;
  }
  .el-table__empty-text {
    @include empty-block;
    color: transparent;
  }
}
/* 树形-空 */
.empty-tree {
  &[loading="true"] .el-tree__empty-block {
    @include loading;
  }
  .el-tree__empty-block {
    @include empty-block;
    .el-tree__empty-text {
      color: transparent;
    }
  }
}

demo.vue

<el-table
  :loading="loading"
  :data="dataList"
  class="empty-table"
  height="100%"
>
  ...
</el-table>

应用二:常规列表样式
demo.scss

/** grid布局 **/
    .data-list {
      padding: var(--space-middle);
      height: calc(100vh - 150px);
      display: grid;
      grid-template-columns: repeat(5, 1fr);
      grid-template-rows: repeat(auto-fill, 126px);
      justify-content: space-around;
      grid-gap: var(--space-normal);
      overflow: auto;
      @include empty(true);
      /* 加载状态 */
      &[loading="true"]{
        @include loading;
      }
    }
/** 常规列表 **/
    .data-list2{
      &[loading="true"]{
        @include loading;
      }
      @include empty;
    }

注:mixin样式继承
@extend .empty-table;

标签:scss,loading,回显,伪类,height,grid,block,include,empty
From: https://www.cnblogs.com/yiping5/p/18216050

相关文章

  • SCSS入门指南:基本语法与高效用法
    关于SCSS(SassyCSS)基本使用的文章概述:###1.SCSS简介*SCSS是一种CSS的扩展语言,它允许开发者使用更强大、更灵活的语法来编写样式表。*SCSS提供了变量、嵌套规则、混合宏等高级功能,使得CSS代码更加模块化和可维护。*SCSS最终被编译成标准的CSS文件,以供浏览器解析。###2.安......
  • 探索SCSS:让CSS开发更高效的预处理器
    在现代前端开发中,CSS预处理器已成为不可或缺的工具。SCSS(SassyCSS)作为Sass的一种语法扩展,结合了Sass的强大功能和CSS的简洁语法,使得编写样式变得更加灵活和高效。本文将详细介绍SCSS的特点、使用方法以及最佳实践,帮助开发者更好地掌握这一强大的工具。一、SCSS简介SCSS是......
  • SCSS 基本使用详解
    一、引言SCSS是Sass(SyntacticallyAwesomeStylesheets)的其中一种语法,是一种预处理器脚本语言,能够扩展CSS的功能,使其更加强大和高效。SCSS保留了CSS的原有语法,同时增加了变量、嵌套规则、混合宏(mixin)、继承等高级功能。本文将详细介绍SCSS的基本使用方法,帮助读者......
  • scss :export 中导出的变量为空
    1.assets/styles/variables.scss$base-menu-color:#bfcbd9;:export{menuColor:$base-menu-color}2.index.vue<template><div:style="{backgroundColor:variables.menuColor}"></div></template><script>im......
  • elementUI 使用 el-select 的远程搜索功能,导致数据无法回显怎么解决?
    问题:解决方法:在数据初始化的时候将获取到的数据做进一步的处理,进行本地select组件的一个添加constlabels=[];constvalues=[];res.data.rows.forEach((ele)=>{labels.push(ele.buildName);values.push(ele.buildCode)......
  • 菜品分类模块删除接口+今天的图片不回显问题没有解决,明天再说。这篇随便写写吧,呕。+修
    点击删除按钮,删除菜品,也可以在左侧进行批量删除,故制定批量删除接口。删除规则如下 其中被套餐关联的菜品不能删除,因为删除这些菜品直接影响到套餐删除菜品后,关联的口味也要删除,所以这个删除蛮复杂的,并不是那种单表直接删的简单操作  请求参数和返回数据: 涉及到的表有......
  • vue3中使用scss
    安装依赖npminstallsasssass-loader--save-dev局部使用<stylescopedlang="scss">...定义样式</style> 全局共享样式变量,在assets/style文件夹中定义mixin.scss文件,并设置一些样式;在其他文件使用定义的变量前需要引入样式文件表  在vite.config.ts文件中......
  • 富文本内容在el-table中回显并且带省略号
    html部分<el-table><el-table-columnlabel="茶园介绍"width="100"><templateslot-scope="{row}"><divclass="show-ellipsis"v-html="row.profile"@click="viewCyPr......
  • 前端【sass、scss、stylus、less、css】
    介绍less sass stylus 都是css预处理器,语法上稍有差异,作用一样都是让css,增强能力,具备变量,函数..的能力sass的语法两种语法.sass和.scss.sass和.stylus语法很像(了解)要求省略{}和分号,缩进表示嵌套使用$变量名:变量值  定义变量, 示例: ......
  • Tomcat内存马回显
    回顾JSP马详情见:https://www.cnblogs.com/F12-blog/p/18111253之前说的都是利用jsp注入内存马,但Web服务器中的jsp编译器还是会编译生成对应的java文件然后进行编译加载并进行实例化,所以还是会落地。但如果直接注入,比如利用反序列化漏洞进行注入,由于request和respons......