How do I change the vertical gap in between each grid row?
I have tried with grid-gap
, but that only changes the horizontal gap—not vertical. Any help would be appreciated.
.wrapper {
background-color: #1c1c1c;
border: solid black 1px;
margin-left: auto;
margin-right: auto;
width: 1000px;
display: grid;
grid-gap: 10px;
grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
grid-template-rows: 1fr;
grid-template-areas: 'header header header header header' 'menu content content content content' 'menu content content content content' 'footer footer footer footer footer';
}
.header {
grid-area: header;
border: solid white 1px;
background-color: #3a3a3a;
margin: 10px;
}
.menu {
grid-area: menu;
border: solid white 1px;
background-color: #3a3a3a;
margin: 10px;
}
.content {
grid-area: content;
border: solid white 1px;
background-color: #3a3a3a;
display: grid;
grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
grid-template-rows: 1fr 1fr 1fr 1fr 1fr;
grid-gap: 5px;
overflow-y: scroll;
}
.footer {
grid-area: footer;
border: solid white 1px;
background-color: #3a3a3a;
margin: 10px;
}
.menu-item {
list-style: none;
text-align: center;
margin: 10px;
padding: 10px;
border: solid white 1px;
background-color: #1e1e1e;
color: white;
font-family: Arial;
font-size: 20px;
font-weight: bold;
text-transform: uppercase;
}
.madeby {
list-style: none;
text-align: center;
margin: 10px;
padding: 10px;
background-color: #1e1e1e;
color: white;
font-family: Arial;
font-size: 20px;
font-weight: bold;
text-transform: uppercase;
}
.content {
list-style: none;
grid-area: content;
margin: 10px;
padding: 10px;
background-color: #3a3a3a;
}
.top {
list-style: none;
text-align: center;
margin: 10px;
padding: 10px;
background-color: #1e1e1e;
color: white;
font-family: Arial;
font-size: 20px;
font-weight: bold;
text-transform: uppercase;
}
.cell {
border: solid white 1px;
color: white;
font-family: Arial;
font-size: 12px;
font-weight: bold;
text-transform: uppercase;
text-align: center;
height: 20px;
line-height: 20px;
background-color: #1e1e1e;
}
<div class="wrapper">
<div class="header">
<div class="top">header</div>
</div>
<div class="menu">
<li class="menu-item">menu</li>
<li class="menu-item">menu</li>
<li class="menu-item">menu</li>
<li class="menu-item">menu</li>
<li class="menu-item">menu</li>
</div>
<div class="content">
<input class="cell" type="text" value="dato">
<input class="cell" type="text" value="nøkkelvaner">
<input class="cell" type="text" value="oppsumering">
<input class="cell" type="text" value="oppgaver">
<input class="cell" type="text" value="andre">
<input class="cell" type="text" value="dato">
</div>
<div class="footer">
<div class="madeby">footer</div>
</div>
</div>
The grid-row-gap property in CSS is used to define the size of the gap between the grid elements. The user can specify the width of the gap separating the rows by providing value to the grid-row-gap.
You need to decide what to do with that element. Consider absolute positioning to remove it from the document flow. Then it won't occupy any space in the layout. In any case, without that element (and with the optional addition of vertical-align ), the video fills up the grid item.
The row-gap CSS property sets the size of the gap (gutter) between an element's rows.
'grid-gap' has been deprecated in favor of 'gap'. In a similar vein 'grid-row-gap' and 'grid-column-gap' have been deprecated in favor of 'row-gap' and 'column-gap'.
You can use grid-gap
property to solve this, It's a shorthand property for grid-row-gap
and grid-column-gap
. The first value is horizontal gap (row gap), second value is vertical gap (column gap)
grid-gap: 10px 20px;
You can also use the following properties to set gap between the grids:
grid-row-gap: 10px;
grid-column-gap: 20px;
According to the Mozilla Docs:
This property is specified as a value for <'row-gap'> followed optionally by >value for <'column-gap'>. If <'column-gap'> is omitted, it’s set to the same >value as <'row-gap'>.
So, in your code you only sets the grid-gap for row, you should also add the second value for column (vertical)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With