如何防止长段落破坏CSS网格[模板区域]
我正在尝试组合一个绝对简单的布局,看起来我被一个p标记阻止了,该标记将容器拉伸到网格布局之外,而不是预期的行为(包装) 以下是一些基本代码: HTML: 我的理解是,这个网格模板区域基本上是说,“每行有5个相等的分数单位,主网格始终取中间的三个 然而,实际发生的情况是,如果“某些文本”被拉长,模板就会断裂如何防止长段落破坏CSS网格[模板区域],css,css-grid,Css,Css Grid,我正在尝试组合一个绝对简单的布局,看起来我被一个p标记阻止了,该标记将容器拉伸到网格布局之外,而不是预期的行为(包装) 以下是一些基本代码: HTML: 我的理解是,这个网格模板区域基本上是说,“每行有5个相等的分数单位,主网格始终取中间的三个 然而,实际发生的情况是,如果“某些文本”被拉长,模板就会断裂 示例1-预期外观: 例2-破损: 如何配置网格以实际执行正确的操作,而不考虑其内容在默认情况下的行为?您需要包括网格模板列属性: html,正文{ 保证金:0自动; } /*布局材料*
- 示例1-预期外观:
- 例2-破损:
如何配置网格以实际执行正确的操作,而不考虑其内容在默认情况下的行为?您需要包括
网格模板列
属性:
html,正文{
保证金:0自动;
}
/*布局材料*/
标题{网格区域:h;}
页脚{网格区域:f;}
主{网格区域:m;}
.顶级包装器{
显示:网格;
网格模板列:重复(5,1fr);
网格模板区域:
“h”
“.m。”
“f”;
}
/*仅限化妆品-您可以忽略下面的内容*/
页眉、页脚{
背景色:深蓝色;
颜色:白色;
}
主要{
边框:3倍纯红;
背景颜色:灰色;
}
我是头球!
一些页面标题
一些文本。还有一些,越来越多,越来越多,直到这一段,这真的应该是包装,反而会延长主要部分,打破模板的合同。
我是一只脚!
您需要包括网格模板列
属性:
html,正文{
保证金:0自动;
}
/*布局材料*/
标题{网格区域:h;}
页脚{网格区域:f;}
主{网格区域:m;}
.顶级包装器{
显示:网格;
网格模板列:重复(5,1fr);
网格模板区域:
“h”
“.m。”
“f”;
}
/*仅限化妆品-您可以忽略下面的内容*/
页眉、页脚{
背景色:深蓝色;
颜色:白色;
}
主要{
边框:3倍纯红;
背景颜色:灰色;
}
我是头球!
一些页面标题
一些文本。还有一些,越来越多,越来越多,直到这一段,这真的应该是包装,反而会延长主要部分,打破模板的合同。
我是一只脚!
您正在使用它来构建网格。这将布置列和行
但是,如果不定义每列的宽度,它们将默认为auto
(即内容长度)。第二行的第一列和最后一列没有内容,因此它们只是折叠。然后中间的三列将占用该行的所有空间
您需要使用网格模板列
来获得所需的行为。如果将每列设置为1fr
,则该行将被划分为五个等宽列
html,正文{
保证金:0自动;
}
/*布局材料*/
标题{网格区域:h;}
页脚{网格区域:f;}
主{网格区域:m;}
.顶级包装器{
显示:网格;
网格模板区域:
“h”
“.m。”
“f”;
网格模板列:重复(5,1fr);/*新建*/
}
/*仅限化妆品-您可以忽略下面的内容*/
页眉、页脚{
背景色:深蓝色;
颜色:白色;
}
主要{
边框:3倍纯红;
背景颜色:灰色;
}
我是头球!
一些页面标题
一些文本。还有一些,越来越多,越来越多,直到这一段,这真的应该是包装,反而会延长主要部分,打破模板的合同。
我是一只脚!
您正在使用它来构建网格。这将布置列和行
但是,如果不定义每列的宽度,它们将默认为auto
(即内容长度)。第二行的第一列和最后一列没有内容,因此它们只是折叠。然后中间的三列将占用该行的所有空间
您需要使用网格模板列
来获得所需的行为。如果将每列设置为1fr
,则该行将被划分为五个等宽列
html,正文{
保证金:0自动;
}
/*布局材料*/
标题{网格区域:h;}
页脚{网格区域:f;}
主{网格区域:m;}
.顶级包装器{
显示:网格;
网格模板区域:
“h”
“.m。”
“f”;
网格模板列:重复(5,1fr);/*新建*/
}
/*仅限化妆品-您可以忽略下面的内容*/
页眉、页脚{
背景色:深蓝色;
颜色:白色;
}
主要{
边框:3倍纯红;
背景颜色:灰色;
}
我是头球!
一些页面标题
一些文本。还有一些,越来越多,越来越多,直到这一段,这真的应该是包装,反而会延长主要部分,打破模板的合同。
我是一只脚!
Ah nice,谢谢!出于某种原因,我错误地将其回忆为“要么/要么”,其中默认行为是相等空间。添加了一个重复(5,1fr),它做了正确的事情。谢谢!Ah nice,谢谢!出于某种原因,我错误地将其回忆为“要么/要么”,其中默认行为是相等空间。添加了一个重复(5,1fr)它做了正确的事。谢谢!
<div class="top-level-wrapper">
<header>I am a header!</header>
<main>
<h3>Some page title</h3>
<p>
Some text.
</p>
</main>
<footer>I am a footer!</footer>
</div>
html, body {
margin: 0 auto;
}
/* Layout stuff. */
header {grid-area: h;}
footer {grid-area: f;}
main {grid-area:m;}
.top-level-wrapper {
display: grid;
grid-template-areas:
"h h h h h"
". m m m ."
"f f f f f";
}