CSS 网格:50% 高度不适用于第二列
CSS Grid: 50% height not working on second column
我试图让 css 网格结构第二列中的行的高度达到 50%。
我有这个代码:
grid-template-areas: "green red"
"green blue";
grid-template-rows: 100% 50%;
grid-template-columns: 1fr 300px;
但是,该列的第一行较大。这是结果:
我尝试添加:
#page > .red { max-height: 50%; }
但这给了我:
如何让第二列中的两行的高度为 50%?
JSFIDDLE:https://jsfiddle.net/busr380n/13/
#page > .green {
grid-area: green;
background-color: green;
}
#page > .red {
grid-area: red;
background-color: red;
}
#page > .blue {
grid-area: blue;
background-color: blue;
}
#page {
display: grid;
width: 100%;
height: 250px;
grid-template-areas: "green red"
"green blue";
grid-template-rows: 100% 50%;
grid-template-columns: 1fr 300px;
}
#page > .red { max-height: 50%; }
<section id="page">
<div class="green"></div>
<div class="red"></div>
<div class="blue"></div>
</section>
这是您的代码:
grid-template-areas: "green red"
"green blue";
grid-template-rows: 100% 50%;
您已经创建了两行。但是您已经为第一行提供了网格容器的 100% 高度。这会强制第二行存在于容器之外。
试试这个:
grid-template-areas: "green red"
"green blue";
grid-template-rows: 50% 50%;
不需要网格项目上的 max-height
。
#page {
display: grid;
height: 250px;
grid-template-areas: "green red"
"green blue";
grid-template-rows: 50% 50%;
grid-template-columns: 1fr 300px;
}
#page > .green {
grid-area: green;
background-color: green;
}
#page > .red {
grid-area: red;
background-color: red;
}
#page > .blue {
grid-area: blue;
background-color: blue;
}
<section id="page">
<div class="green"></div>
<div class="red"></div>
<div class="blue"></div>
</section>
我试图让 css 网格结构第二列中的行的高度达到 50%。
我有这个代码:
grid-template-areas: "green red"
"green blue";
grid-template-rows: 100% 50%;
grid-template-columns: 1fr 300px;
但是,该列的第一行较大。这是结果:
我尝试添加:
#page > .red { max-height: 50%; }
但这给了我:
如何让第二列中的两行的高度为 50%?
JSFIDDLE:https://jsfiddle.net/busr380n/13/
#page > .green {
grid-area: green;
background-color: green;
}
#page > .red {
grid-area: red;
background-color: red;
}
#page > .blue {
grid-area: blue;
background-color: blue;
}
#page {
display: grid;
width: 100%;
height: 250px;
grid-template-areas: "green red"
"green blue";
grid-template-rows: 100% 50%;
grid-template-columns: 1fr 300px;
}
#page > .red { max-height: 50%; }
<section id="page">
<div class="green"></div>
<div class="red"></div>
<div class="blue"></div>
</section>
这是您的代码:
grid-template-areas: "green red"
"green blue";
grid-template-rows: 100% 50%;
您已经创建了两行。但是您已经为第一行提供了网格容器的 100% 高度。这会强制第二行存在于容器之外。
试试这个:
grid-template-areas: "green red"
"green blue";
grid-template-rows: 50% 50%;
不需要网格项目上的 max-height
。
#page {
display: grid;
height: 250px;
grid-template-areas: "green red"
"green blue";
grid-template-rows: 50% 50%;
grid-template-columns: 1fr 300px;
}
#page > .green {
grid-area: green;
background-color: green;
}
#page > .red {
grid-area: red;
background-color: red;
}
#page > .blue {
grid-area: blue;
background-color: blue;
}
<section id="page">
<div class="green"></div>
<div class="red"></div>
<div class="blue"></div>
</section>