我有一个图像,我将动态填充src稍后与javascript,但为了方便,我希望图像标签存在于页面加载,但只是不显示任何东西。我知道<img src= " />是无效的,那么最好的方法是什么?


当前回答

<img src="invis.gif" />

gif是一个单像素的透明gif。这在未来的浏览器版本中不会中断,并且自90年代以来一直在传统浏览器中工作。

PNG也可以工作,但在我的测试中,GIF是43字节,PNG是167字节,所以GIF赢了。

另外,不要忘记Alt标签,验证器也喜欢它们。

其他回答

如果你保持SRC属性为空,浏览器将发送请求到当前页面的url 如果不想要任何url,总是在SRC属性中添加1*1透明img

src="data:image/gif;base64,R0lGODlhAQABAAAAACwAAAAAAQABAAA="

我建议动态添加元素,如果使用jQuery或其他JavaScript库,它是相当简单的:

http://api.jquery.com/appendTo/ http://api.jquery.com/prependTo/ http://api.jquery.com/html/

再看看prepend和append。否则,如果你有一个这样的图像标签,你想让它有效,那么你可以考虑使用一个虚拟的图像,如1px透明gif或png。

<img src="invis.gif" />

gif是一个单像素的透明gif。这在未来的浏览器版本中不会中断,并且自90年代以来一直在传统浏览器中工作。

PNG也可以工作,但在我的测试中,GIF是43字节,PNG是167字节,所以GIF赢了。

另外,不要忘记Alt标签,验证器也喜欢它们。

根据本文,使用真正空白、有效且高度兼容的SVG:

src = " +:形象/ svg xml数据;charset = utf8, 3Csvg % 20xmlns = http://www.w3.org/2000/svg’排% 3C / svg %排”

与任何SVG一样,它的默认大小为300x150px,但是您可以在img元素的默认样式中使用它,因为在实际实现中任何情况下都可能需要它。

我发现,简单地将src设置为一个空字符串,并在CSS中添加一个规则来隐藏损坏的图像图标就可以了。

[src=''] {
    visibility: hidden;
}