【发布时间】:2013-08-31 08:10:48
【问题描述】:
我的页面上有一些图片。
默认情况下,如果给定图像不可用,则损坏的图像指示器会显示在 Chrome 和 IE 上。
我希望 nothing 在这种情况下只显示替代文本。有没有办法使用 CSS 来处理它。
【问题讨论】:
标签: html css internet-explorer google-chrome
我的页面上有一些图片。
默认情况下,如果给定图像不可用,则损坏的图像指示器会显示在 Chrome 和 IE 上。
我希望 nothing 在这种情况下只显示替代文本。有没有办法使用 CSS 来处理它。
【问题讨论】:
标签: html css internet-explorer google-chrome
尝试将alt=" "设置为空字符串,如果找不到图像,则只有一个空格。
【讨论】:
您可以使用 JavaScript 中的 onerror 事件在图像加载失败时采取行动:
var img = document.getElementById("myImg");
img.onerror = function () {
this.style.display = "none";
}
或使用
var images=document.getElementsByTagName("img");
for(i=0;img[i]!=null;i++)
{
img[i].style.display = "none";
}
【讨论】:
使用javascript
<img src="broken.png" onerror="this.style.display='none'"/>
编辑:添加了将处理所有图像的小片段。
$("img").error(function(){$(this).hide();});
【讨论】:
您可以使用 object 标签,而不是使用 JavaScript 或 CSS。它的代码更简洁。在标签之间添加替代文本,如下所示:
<object data="img/failedToLoad.png" type="image/png">Alternative Text</object>
【讨论】: