Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
CSS-内联块元素之间的奇数边距_Css_Html - Fatal编程技术网

CSS-内联块元素之间的奇数边距

CSS-内联块元素之间的奇数边距,css,html,Css,Html,我在一个容器div上有一组元素,其中包含display:inline block,如果内容超过设备宽度,则应该水平扩展。这一切都很好,但是每个.item元素之间有一个奇怪的边距,正如您在这里看到的: (请注意图像之间的蓝线) 没有边距或填充物弄乱了它,我也不知道为什么它会这样而不是浮动。有什么想法吗?这是由于HTML标记中的空白和/或换行造成的。在代码中删除它们,边距也将消失。“内联”元素和display:inline block始终是个问题,这是由于HTML标记中的空白和/或换行造成的。删除

我在一个容器div上有一组元素,其中包含
display:inline block
,如果内容超过设备宽度,则应该水平扩展。这一切都很好,但是每个
.item
元素之间有一个奇怪的边距,正如您在这里看到的:

(请注意图像之间的蓝线)


没有边距或填充物弄乱了它,我也不知道为什么它会这样而不是浮动。有什么想法吗?

这是由于HTML标记中的空白和/或换行造成的。在代码中删除它们,边距也将消失。“内联”元素和
display:inline block

始终是个问题,这是由于HTML标记中的空白和/或换行造成的。删除代码中的这些内容,边距也将消失。“内联”元素和
显示:内联块始终是个问题

发生这种情况的原因是.item元素的显示类型。设置“显示:内联”块时,它不会在不留空间的情况下堆叠元素。与设置“float:left”时类似,元素在没有空间的情况下彼此堆叠

修复方法是将字体大小0设置为父元素。在你的情况下#gallery的字体大小应该是0,你就可以走了。

Yoda

发生这种情况的原因是.item元素的显示类型。设置“显示:内联”块时,它不会在不留空间的情况下堆叠元素。与设置“float:left”时类似,元素在没有空间的情况下彼此堆叠


修复方法是将字体大小0设置为父元素。在您的情况下#gallery的字体大小应为0,您就可以开始了。

display:inline block
意味着元素被处理为inline(如单词)和block(如div或image)。这意味着它们将具有行高、字间距和换行,并将受到文本对齐的影响,就像内联元素一样。尝试设置:

word-spacing: 0;
之后

display: inline-block;

确认这是否解决了问题。

显示:内联块
表示元素同时作为内联(如单词)和块(如div或图像)处理。这意味着它们将具有行高、字间距和换行,并将受到文本对齐的影响,就像内联元素一样。尝试设置:

word-spacing: 0;
之后

display: inline-block;

确认此问题是否解决。

请在问题中包含重现问题的代码。这样,当你修复你的站点时,这个问题将来对其他有同样问题的人仍然有帮助。请在你的问题中包含重现问题的代码。这样,当你修复你的站点时,这个问题在将来对其他有同样问题的人仍然有帮助。你是对的,它与标记上的空白有关,尽管我什么也看不到,但在我加入每一行后,它停止了。谢谢。是的,代码中的换行符变成了一个空白,并导致一个4倍宽度的空格。从代码中删除换行符是两个选项之一。另一个选项是@Shekhar Sharma在他的回答中提到的字体大小(父字体大小:0;因此空格字符的宽度为0px,但它仍然存在。这就是为什么我更喜欢另一个选项)。删除空格并不总是可能的,对吗?当你编写HTML的时候,这不是一个很方便的方法。对!当您自己编写或动态创建代码时,应该没有问题。但如果您包含来自国外的代码,可能会有问题。尽管如此,
display:inline block
通常比
float
有一些优势(这也有其缺点),尽管它有点脆弱,您必须小心不要被困在里面…!;-)你是对的,这与标记上的空白有关,虽然我什么也看不见,但在我把每一行都加入一行之后,它就停止了。谢谢。是的,代码中的换行符变成了一个空白,并导致一个4倍宽度的空格。从代码中删除换行符是两个选项之一。另一个选项是@Shekhar Sharma在他的回答中提到的字体大小(父字体大小:0;因此空格字符的宽度为0px,但它仍然存在。这就是为什么我更喜欢另一个选项)。删除空格并不总是可能的,对吗?当你编写HTML的时候,这不是一个很方便的方法。对!当您自己编写或动态创建代码时,应该没有问题。但如果您包含来自国外的代码,可能会有问题。尽管如此,
display:inline block
通常比
float
有一些优势(这也有其缺点),尽管它有点脆弱,您必须小心不要被困在里面…!;-)这在我的情况下非常有效。有一个文本对齐的容器:中心,容器内部有内联块元素。当我在页面上动态加载更多内联块元素时,它们会稍微移动,但添加字体大小:0使它们保持完全对齐。仅当文本居中对齐处于活动状态、左对齐或右对齐正常时,才会发生此情况。。。注意:令人惊讶的是,firefox是唯一一款不需要字体大小就可以顺利完成此过程的浏览器:0、comon chrome和safari番茄酱!:)这在我的情况下非常有效。有一个文本对齐的容器:中心,容器内部有内联块元素。当我在页面上动态加载更多内联块元素时,它们会稍微移动,但添加字体大小:0使它们保持完全对齐。仅当文本居中对齐处于活动状态、左对齐或右对齐正常时,才会发生此情况。。。注意:令人惊讶的是,firefox是唯一一款不需要字体大小就可以顺利完成此过程的浏览器:0、comon chrome和safari番茄酱!:)