问题 图像“显示:阻止”的缺点?


转换是否有任何不利因素 img 从内联块元素到块对象的 display: block CSS属性?

大多数时候,我希望他们成为 block 元素。任何有用的 inline 我失去的方面? (也许我没有看到 一些 有用吗?)

是否应将所有图像转换为 block 元素默认?为什么它们根据规范进行内联块元素?

附:我通过定位和浮动以及周围元素考虑布局。


3035
2017-10-30 18:38


起源

为什么不尝试一下,看看会发生什么? :-P - Rocket Hazmat
为什么你希望它们像块元素一样?有什么用例? - Ates Goral
@火箭已经有 - 你有什么指的吗? @Ates,我想,在很大程度上,我要问的是 - 为什么它们被规范视为内联块元素?例如,这可能会引发一些问题: stackoverflow.com/questions/13111136/... - Baumr
根据您的修改重新打开,但社区可以自由覆盖我。 - Tim Post♦
在css中,“阻止”意味着采取保持线并休息一下 - jondinham


答案:


考虑到一个块会在换行后强制执行任何操作,只有一种情况会很糟糕:

如果您打算在它旁边有另一个内联元素(文本,另一个图像,跨度等)


13
2017-10-31 05:34



感谢您的参与。这是有道理的。据我所知,大多数网站主要使用图像作为块元素。我想我可能会开始添加 img { display: block; } 到我的所有样式表。通常我会在图像到图像的基础上进行,如果图像引起问题,但我认为这个解决方案更好。 除非在布局或浏览器不一致方面存在任何潜在的“错误”? - Baumr
我希望我能回答这个问题,这是一个问题。我不能完全记住这个问题,但我相信这是程序员必须添加的浏览器(IE6)之间渲染图像的不一致 display: block - David Nguyen
是的我记得那样的事情......但不确定,所以我问的原因。但似乎这样做很好:) - Baumr


img { display: block; } 在你的CSS中忘掉它。在非常罕见的情况下,您需要不同的东西写一个例外。


1
2017-12-12 18:25





有一个缺点: 如果计划将“text-align:center”应用于父元素的图像水平居中,则无法将图像显示为块或内联块。


1
2018-03-17 15:23





找到一个块显示块:“块”。

我有这个图像和 WaveSurfer示波器 音频波,我想作为内联。 但是,显示:“阻止”;在waveurfer的js中不允许它。

我做了什么,救了这个 CDN 本地文件并更改了 显示内联 和 绝对的位置 这解决了我的问题。应该在创建wave元素的地方完成更改。

希望这有助于某人。感谢waveurfer为这样一个惊人的js创作者。


0
2017-12-05 10:16