Layui表格如何设置表格加载时的遮罩层透明度

老伟小哥_2399

老伟小哥_2399

2026-04-21

753人浏览

原创

layui table 的 loading 遮罩透明度需通过覆盖 .layui-layer-loading 的 background css 实现,因其 base64 背景图已内置半透明白色,仅支持修改 #rrggbbaa 格式颜色值或降级用 rgba() 加 !important。

layui table 的 loading 遮罩层透明度在哪改

不能直接设透明度。layui 的表格加载遮罩是用 layer.msg 模拟的,底层调用的是 layer.load(),而它默认渲染的 dom 没暴露 opacity 控制入口。

真正起作用的是 layer 自带的 CSS 类 layui-layer-loading 里的 background 色值——它把半透明白色和 loading 图标合成在一张 base64 图里了。

  • 修改方式只有覆盖 CSS:重写 .layui-layer-loading 的 background
  • 不要动 layer.load(1) 的 type 参数,type=1/2/3 对应不同图标,但都不影响透明度
  • 别试图在 table.render() 的 done 或 init 回调里操作 DOM,遮罩在 data 请求发出前就挂上了,时机不对

如何安全覆盖 layer 加载层背景色(含透明度)

必须等 layer CSS 加载完成后再注入样式,否则会被覆盖。推荐在 layui.use(['table', 'layer'], ...) 回调内执行:

layui.use(['table', 'layer'], function(){
  var table = layui.table;
  // 确保 layer 样式已就绪
  setTimeout(function(){
    var style = document.createElement('style');
    style.innerHTML = '.layui-layer-loading{background:#0000001a url("data:image/svg+xml,%3Csvg...") no-repeat 50% 50%!important;}';
    document.head.appendChild(style);
  }, 0);
<p>table.render({/<em> your config </em>/});
});</p>

注意:#0000001a 是带 alpha 的十六进制(1a ≈ 10% 不透明),不是 rgba()——layer 的 background 是单个声明,用 rgba 会破坏 base64 图片拼接。

深蓝色网站后台管理系统layui框架模板-AdminPro
深蓝色网站后台管理系统layui框架模板-AdminPro

一款深蓝色网站后台管理系统layui框架模板

下载
  • base64 图片部分建议保留原样,只换前面的 color 值
  • 如果用 webpack/vite,把这段 style 写进全局 CSS 更稳妥,加 :not(.layui-layer-iframe) .layui-layer-loading 提高优先级
  • 移动端需额外测试,某些安卓 WebView 对 #rrggbbaa 支持不一致

为什么不用 loading: false + 手动控制遮罩

可以,但没必要复杂化。禁用内置 loading 后你得自己监听 beforeSend 和 done,还要处理异常中断、重复点击、节流等问题。

  • loading: false 只关掉 layer 遮罩,不影响请求本身
  • 手动加遮罩要操作 table.elem.next('.layui-table-box') 的父容器,容易错位
  • 如果用了 page: true,翻页时还得重新绑定,table.on('page(...) 事件里补逻辑
  • 性能上没优势,反而多一次 DOM 查找和样式切换

兼容性与调试要点

Layui 2.8+ 的 layer 已支持 CSS 变量,但未暴露 opacity;旧版(如 2.5.6)连 #rrggbbaa 都不认,得降级用 rgba(0,0,0,0.1) + !important 强制。

  • 检查浏览器控制台 Elements 面板,确认最终生效的 .layui-layer-loading 样式是否被覆盖
  • 遮罩消失延迟?不是透明度问题,是 done 回调里数据解析太慢,跟 CSS 无关
  • 如果表格用了 skin: 'line' 或 'nob',遮罩位置可能偏移,需同步调整 background-position

真正卡住人的往往不是怎么改,而是改完发现没生效——八成是 CSS 优先级或加载时机问题,盯住 computed styles 里 background 的最终值。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

layui

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
ajax教程
ajax教程

php中文网为大家带来ajax教程合集,Ajax是一种用于创建快速动态网页的技术。通过在后台与服务器进行少量数据交换,Ajax可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。php中文网还为大家带来ajax的相关下载资源、相关课程以及相关文章等内容,供大家免费下载使用。

2023.06.14

2800

4

ajax中文乱码解决方法
ajax中文乱码解决方法

ajax中文乱码解决方法有设置请求头部的字符编码、在服务器端设置响应头部的字符编码和使用encodeURIComponent对中文进行编码。本专题为大家提供ajax中文乱码相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.31

360

5

ajax传递中文乱码怎么办
ajax传递中文乱码怎么办

ajax传递中文乱码的解决办法:1、设置统一的编码方式;2、服务器端编码;3、客户端解码;4、设置HTTP响应头;5、使用JSON格式。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.11.15

2633

5

ajax网站有哪些
ajax网站有哪些

使用ajax的网站有谷歌、维基百科、脸书、纽约时报、亚马逊、stackoverflow、twitter、hacker news、shopify和basecamp等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2024.09.24

1161

6

css3教程
css3教程

php中文网为大家提供css3教程合集,CSS3的语法是建立在CSS原先版本基础上的,它允许使用者在标签中指定特定的HTML元素而不必使用多余的class、ID或JavaScript。php中文网还为大家带来css3的相关下载资源、相关课程以及相关文章等内容,供大家免费下载使用。

2023.06.14

1900

10

有哪些css3渐变属性
有哪些css3渐变属性

css3中渐变属性有linear-gradient、radial-gradient、conic-gradient、repeating-linear-gradient、repeating-radial-gradient等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.11.01

2766

5

Python uv使用教程
Python uv使用教程

本专题汇总了 Python uv 使用教程与高效使用指南,从 uv 安装配置、常用命令到虚拟环境、依赖管理与项目打包,系统讲解如何用 uv 替代 pip 与 poetry,全面提升 Python 项目开发效率,助你快速上手这一现代化包管理工具,打造干净高效的 Python 工作流。

2026.10.15

0

15

剧云AI短剧创作教程合集
剧云AI短剧创作教程合集

本专题聚焦剧云AI短剧创作,讲解从短剧灵感、梗概、全局大纲到分集、分场和正文的完整流程及节奏设计方法。

2026.10.14

0

15

剧云AI剧本创作零基础入门
剧云AI剧本创作零基础入门

本专题系统讲解剧云AI剧本创作流程,涵盖灵感、梗概、大纲、分场与正文生成,帮助新手快速完成首个中文剧本项目。

2026.10.14

0

14

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
ThinkPHP配置开发与CMS后台实战
ThinkPHP配置开发与CMS后台实战

共87课时 | 12.9万人学习

第二十三期_综合实战
第二十三期_综合实战

共89课时 | 11.1万人学习

Layui 快速入门精讲
Layui 快速入门精讲

共5课时 | 1.6万人学习