Reputation: 8181
I have some extra vertical spacing between the rows of my 3x3 grid of DIVs and I don't know why. Can somebody help me out here:
.tinybox {
width: 5px;
height: 5px;
border: solid 1px #999;
padding: 0;
margin: 1px;
float: left;
}
<div class="tinybox"></div>
<div class="tinybox"></div>
<div class="tinybox"></div>
<br style="clear:both" />
<div class="tinybox"></div>
<div class="tinybox"></div>
<div class="tinybox"></div>
<br style="clear:both" />
<div class="tinybox"></div>
<div class="tinybox"></div>
<div class="tinybox"></div>
<br style="clear:both" />
I have tried line-height, but that does nothing.
Upvotes: 0
Views: 615
Reputation: 2999
You can use display:grid
to create similar layout, and use grid-column-gap
and grid-row-gap
to control the gap / spacing more easier.
.parent {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-template-rows: repeat(3, 1fr);
grid-column-gap: 10px;
grid-row-gap: 10px;
height:300px;
width:300px;
}
.child{
border:1px solid #ccc;
}
<div class="parent">
<div class="child">1</div>
<div class="child">2</div>
<div class="child">3</div>
<div class="child">4</div>
<div class="child">5</div>
<div class="child">6</div>
<div class="child">7</div>
<div class="child">8</div>
<div class="child">9</div>
<div>
Upvotes: 0
Reputation: 274024
Clear float without br
.tinybox {
width: 5px;
height: 5px;
border: solid 1px #999;
padding: 0;
margin: 1px;
float: left;
}
.tinybox:nth-child(3n + 1) {
clear:both;
}
<div class="tinybox"></div>
<div class="tinybox"></div>
<div class="tinybox"></div>
<div class="tinybox"></div>
<div class="tinybox"></div>
<div class="tinybox"></div>
<div class="tinybox"></div>
<div class="tinybox"></div>
<div class="tinybox"></div>
Upvotes: 1