• 主页
  • 归档
  • 分类
  • 照片墙
所有文章 友情链接 关于我

  • 主页
  • 归档
  • 分类
  • 照片墙
  1. 1. 图片异常处理
  2. 2. CSS函数attr()
    1. 2.1. 同时显示出alt信息

图片加载失败处理

2020-10-28 17:34:36
总字数 387
预计阅读时间 1 分钟

浏览器在图片加载失败之后,默认会显示一个图裂的图标
并且alt属性也会显示出来

1
<img src="xxx.png" alt="这里是个提示" />

是这样的效果
图裂

图片异常处理

多数时候我们都希望能够美化一下,常规方案是这样的

1
<img src="xxx.png" alt="这里是个提示" onerror="this.src='break.svg';" />

使用占位图片进行兜底处理
这样没有问题,但是此时这个替换图片,就不会显示出alt的内容了
多数时候这个alt的内容是一个需要传递给用户的提示

CSS函数attr()

这个函数可以用来获取当前DOM元素的属性,但是目前只能作为伪元素content属性的值
当然获取DOM元素的任意属性都可以的

1
<div class="box" abc="这里是文字"></div>
1
2
3
.box::after{
content: attr(abc);
}

同时显示出alt信息

利用attr函数,就可以做点比较酷的效果了

1
2
<img src="xxx.png" alt="这里是个提示" style="height:100px; width:150px;" 
onerror="this.classList.add('error')" />
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
img.error {
display: inline-block;
position: relative;
}
img.error::before {
content: '';
background: #FFF url('break.svg') no-repeat;
background-position: center;
background-size: cover;
height: 100%;
width: 100%;
position: absolute;
left: 0;
top: 0;
}
img.error::after {
content: attr(alt);
position: absolute;
background: rgba(0, 0, 0, 0.6);
width: 100%;
bottom: 0;
left: 0;
text-align: center;
color: #FFF;
padding: 5px;
}

效果
显示alt内容

  • 前端
  • css
  • 前端杂烩

扫一扫,分享到微信

Web Components
原生CSS变量 
© 2024 夏夜梦星辰
鲁ICP备19028444号
Power By Hexo
  • 所有文章
  • 友情链接
  • 关于我
{{searchItem.query}}
标签: 分类:
  • maven
  • 持续集成
  • JMS
  • 线程
  • JavaScript
  • ECMAScript6
  • 单元测试
  • Promise
  • Web Worker
  • 函数
  • prototype
  • 模块化
  • 正则表达式
  • 数据库
  • MongoDB
  • 索引
  • 集群
  • 全文检索
  • flutter
  • dart
  • git
  • 版本控制
  • linux
  • shell
  • docker
  • nginx
  • jenkins
  • opencv
  • vim
  • react
  • react native
  • 前端
  • css
  • HTML5
  • Hexo
  • sass
  • Three.js
  • TypeScript
  • Vue
  • 组件化
  • base64
  • webpack
  • nodejs
  • gulp
  • TensorFlow
  • 机器学习
  • 算法
  • 动态规划
  • 数据结构
  • Java
  • JavaScript
  • MongoDB
  • flutter
  • Git
  • linux
  • react
  • 前端杂烩
  • 男生女生
  • 算法
  • 十年饮冰,难凉热血
  • †少女癌†
  • 猫与向日葵
  • coderfun
  • JENKINS
  • API管理后台
愿你最终能接纳每一面每一种的自己
独自活着便是团圆