【发布时间】:2018-06-20 04:28:11
【问题描述】:
我正在尝试在嵌套网格项目中创建三个项目。正如您从代码中看到的那样,我将“panels”div 放在“jumbo”和“content”div 之间。我还在里面嵌套了三个div。在 CSS 中,我在 .panels 内添加了一个嵌套网格。
我希望将“面板”div 在垂直轴上分成三个大小相等的部分。想象三个方块一个接一个地堆叠起来。但嵌套项目不会填满整个“面板”div。如果你运行代码 sn -p,你可以看到面板是嵌套的,但不会占用整个空间。他们只占父母的一小部分。我在其中一个嵌套面板中添加了background-color: white !important,以显示它有多小。
另一个例子可以在这里看到:https://codepen.io/rachelandrew/pen/NqQPBR/
但同样,嵌套的 E、F 和 G 项目不会扩展以填满整个 D 部分。
有没有办法让三个面板填充它们的父级?
.container {
display: grid;
width: 100%;
height: 100%;
grid-gap: 3px;
grid-template-columns: repeat(10, 1fr);
grid-template-rows: 40px 130px 130px 130px 60px 330px 40px;
}
.header {
grid-column: 1 / -1;
}
.jumbo {
grid-column: 1 / -1;
grid-row: 2 / 5;
}
.panels {
grid-column: 3 / 9;
grid-row: 4 / 6;
z-index: 1;
display: grid;
grid-template-columns: repeat(3, 1fr);
}
.panel1 {
grid-row: 1 / 2;
grid-row: 1;
background-color: white !important;
z-index: 2;
}
.content {
grid-column: 1 / -1;
grid-row: 5 / 7;
}
.footer {
grid-column: 1 / -1;
}
/* Styling */
.container > div {
display: grid;
justify-content: center;
align-items: center;
font-size: 2em;
color: #ffeead;
}
html, body {
background-color: #ffeead;
box-sizing: border-box;
height: 100%;
margin: 0px;
font-family: "Work Sans"
}
.container > div:nth-child(1n) {
background-color: #96ceb4;
}
.container > div:nth-child(3n) {
background-color: #88d8b0;
}
.container > div:nth-child(2n) {
background-color: #ff6f69;
}
.container > div:nth-child(4n) {
background-color: #ffcc5c;
}
.panels > div:nth-child(1n) {
background-color: #96ceb4;
}
<div class="container">
<div class="header">
HEADER
</div>
<div class="jumbo">
JUMBO
</div>
<div class="panels">
<div class="panel1">PANEL1</div>
<div class="panel2">PANEL2</div>
<div class="panel3">PANEL3</div>
</div>
<div class="content">
CONTENT
</div>
<div class="footer">
FOOTER
</div>
</div>
【问题讨论】:
标签: html css web-deployment css-grid