Html 如何在不影响非空图像的情况下调整空图像的大小?

Html 如何在不影响非空图像的情况下调整空图像的大小?,html,css,Html,Css,我想将空图像的大小固定为150px。在Firefox上,我可以使用float:left,但在Google Chrome上不起作用 HTML: 有没有CSS解决方案 我认为有一些误解。SRC应该是我在advanced中不知道的随机URL。理想情况下,使用空占位符: <div> <div><!----></div> <br> <img src='http://farm7.staticflickr.com/6063/6046604

我想将空图像的大小固定为150px。在Firefox上,我可以使用float:left,但在Google Chrome上不起作用

HTML:

有没有CSS解决方案


我认为有一些误解。SRC应该是我在advanced中不知道的随机URL。

理想情况下,使用空占位符:

<div>
 <div><!----></div>
 <br>
 <img src='http://farm7.staticflickr.com/6063/6046604665_da6933bd10.jpg'>
</div>

。。。给它你需要的尺寸。这将允许您执行诸如在其位置显示背景占位符图像等操作。

如果您要设置空图像标记的样式:

img[src=""] { width: 150px; }
除了IE6,它应该可以工作

如果您想使其跨浏览器兼容,来自的解决方案将是您的最佳选择

或jQuery解决方案,因为CSS无法检查损坏的URL:

$('img').error(function(){
    $(this).css('width', '150px');
});

img[src]{…}如果src是空的,则省略src只是为了防止它对OP很重要。在这种情况下,IE6不支持此属性选择器。@Tom谢谢。我忘了提。编辑了我的答案。我认为有一些误解,URL应该是随机的。@BenHuh在我看来,这仅用CSS是不可能的,因为CSS不能检查损坏的图像URL。您接受jQuery/Javascript解决方案吗?是的,我知道CSS无法检查断开的链接。我想知道,因为我已经指定了最小宽度和最大宽度,所以图像必须在这个范围内渲染。如果图像大小在此范围内,则应按原样渲染。如果图像大于“最大宽度”,则应以等于“最大宽度”的宽度渲染图像。如果图像小于最小宽度,则应以等于最小宽度的宽度渲染图像。如果没有找到图像,我从逻辑上假设它应该保持最小宽度,因为大小应该是0。但这不需要一些javascript吗?我不知道是否可以事先使用image来更改html元素。您只需在服务器端将其呈现为image或div,而无需使用Javascript。但如果这听起来太复杂,我会同意上面dop trois的建议。但是URL应该是随机的外部链接,我的意思是src=表示断开的链接。“我已经编辑了我的问题以使其清晰明了。@Ben Huh:在这种情况下,我建议的解决方案不是一个选项。”。在渲染图像之前,您必须坚持使用损坏的标记,或者测试图像是否存在。如果我没记错的话,IE8会在src丢失时呈现一个损坏的图像图标,可能是其他浏览器;Firefox没有。无论如何,谢谢你抽出时间。。
img[src=""] { width: 150px; }
$('img').error(function(){
    $(this).css('width', '150px');
});