我有一个图像,我将动态填充src稍后与javascript,但为了方便,我希望图像标签存在于页面加载,但只是不显示任何东西。我知道<img src= " />是无效的,那么最好的方法是什么?
当前回答
<img src="invis.gif" />
gif是一个单像素的透明gif。这在未来的浏览器版本中不会中断,并且自90年代以来一直在传统浏览器中工作。
PNG也可以工作,但在我的测试中,GIF是43字节,PNG是167字节,所以GIF赢了。
另外,不要忘记Alt标签,验证器也喜欢它们。
其他回答
简单来说,就像这样:
<img id="give_me_src"/>
我发现,简单地将src设置为一个空字符串,并在CSS中添加一个规则来隐藏损坏的图像图标就可以了。
[src=''] {
visibility: hidden;
}
我建议动态添加元素,如果使用jQuery或其他JavaScript库,它是相当简单的:
http://api.jquery.com/appendTo/ http://api.jquery.com/prependTo/ http://api.jquery.com/html/
再看看prepend和append。否则,如果你有一个这样的图像标签,你想让它有效,那么你可以考虑使用一个虚拟的图像,如1px透明gif或png。
根据Ben Blank的回答,我在w3验证器中得到这个验证的唯一方法是这样的:
<img src="/./.:0" alt="">`
我发现使用:
<img src="file://null">
不会发出请求并正确验证。
浏览器只会阻止对本地文件系统的访问。
但是在Chrome的控制台日志中可能会显示一个错误,例如:
Not allowed to load local resource: file://null/