Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/82.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_Spacing_Margins - Fatal编程技术网

Css 是什么导致元素之间的边距?我怎样才能摆脱它们?

Css 是什么导致元素之间的边距?我怎样才能摆脱它们?,css,html,spacing,margins,Css,Html,Spacing,Margins,我正试图消除s和s之间的空隙。我希望这个网格正好是4个div。我已经尝试将所有边距、填充和边框设置为0 #网格{ 宽度:100px; 高度:100px; 边际:0px; 填充:0px; 边界:0px; } .孩子{ 背景颜色:浅粉色; 宽度:25px; 高度:25px; 显示:内联块; 边际:0px; 边界:0px; 填充:0px; } 内联元素允许空白。要删除此项,可以对子元素(在您的情况下为div)使用float:left,或对父元素(即网格)使用font-size:0px 或 你需要一

我正试图消除s和s之间的空隙。我希望这个网格正好是4个div。我已经尝试将所有边距、填充和边框设置为0


#网格{
宽度:100px;
高度:100px;
边际:0px;
填充:0px;
边界:0px;
}
.孩子{
背景颜色:浅粉色;
宽度:25px;
高度:25px;
显示:内联块;
边际:0px;
边界:0px;
填充:0px;
}

内联元素允许空白。要删除此项,可以对子元素(在您的情况下为div)使用
float:left
,或对父元素(即网格)使用
font-size:0px


你需要一个浮动:左;在儿童班。
这将使div尽可能向左移动,当网格div内的空间用完时,它们会继续下一行,就像阅读一样。
但有些时候,这需要一个空div,在结尾处,样式清晰:两者都有;巫婆很好地调整了它,并确保没有“小故障”,有时会发生

我让我为你拉小提琴:

jsfiddle.net/WQdxS/

您可以设置:

.child{
    display: block;
    float: left;
}
要解决此问题,请使用4x4网格,不带空格

如上所述,问题在于使用
显示内联。

div应该是块级元素。为什么要把这些内联起来?
将它们视为块级元素&这个问题本身就解决了,不需要借助于诸如删除空白或为不包含任何文本的元素任意设置字体大小0之类的怪癖

这是
内联
元素的典型特征。。另请参见注意,垂直空间属于行高保留字符,因为默认情况下内联元素在其基线中对齐。您可以通过
vertical align:middle
将它们垂直对齐,以消除垂直间隙:
.child
{
float:left;
}
#grid
{
font-size:0px;
}
.child{
    display: block;
    float: left;
}