参考知乎的问题:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<img src="error.jpg" onerror="whenError(this)">
</body>
<script>
function whenError(a){
a.onerror = null;
a.src = 'http://avatar.csdn.net/1/E/E/1_qq_27080247.jpg';
console.log('图片出错的时候调用默认的图片');
}
</script>
</html>
代码来源
作者:秋风
链接:https://www.zhihu.com/questio...
来源:知乎
个人建议把图片修改为 1*1 像素的 png 图片如:blank.png;
看到过别人提类似的问题div下的img标签100%宽高会有白色边框,看你截图的盒模型可知,盒模型上根本 就没有标识出border,所以所谓的边框根本就不是盒模型的边框,而是规范中规定当img不能正常加载时,浏览器需要提供一种显示效果来表明这个位置其实是一个图片元素,只是图片没有正常加载。
所以,当图片不能加载出来的时候,我觉得这个效果是合理的;如果非要改变的话,我能想到的是用js,监听img的onerror事件,当图片加载失败的时候,做一些其他操作,如添加默认图片,或者在失败的时候把图片的透明度设置为0。
5 回答1.3k 阅读✓ 已解决
3 回答1.4k 阅读✓ 已解决
3 回答2.1k 阅读✓ 已解决
4 回答2k 阅读
2 回答1.4k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
2 回答1.9k 阅读✓ 已解决