首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在使用网格模板区域时防止命名网格区域的井喷?

如何在使用网格模板区域时防止命名网格区域的井喷?
EN

Stack Overflow用户
提问于 2022-02-06 19:21:45
回答 1查看 57关注 0票数 0

我有一个简单的页面布局一个边部分和一个主要部分。我希望我的主部分是侧部分的3倍,所以我为这样的区域指定了一个模板:

代码语言:javascript
复制
grid-template-areas: "side main main main";

然而,侧壁面积比预期的要大得多,使得主断面非常小。

预期行为:

实际行为:

下面是代码:

代码语言:javascript
复制
.page-layout {
  display: grid;
  grid-template-areas: "side main main main";
}

.main-section {
  background-color: lightgreen;
  grid-area: main;
}

.side-section {
  background-color: orange;
  grid-area: side;
}

.side-layout {
  display: grid;
  grid-auto-rows: minmax(min-content, max-content);
  grid-template-areas: "name" "summary" "summary";
}

.name-section {
  grid-area: name;
}

.summary-section {
  grid-area: summary;
}
代码语言:javascript
复制
<div class="page-layout">
  <div class="side-section side-layout">
    <h2 class="name">
      Side section
    </h2>
    <p>
      Lorem ipsum dolor sit amet, consectetur adipisicing elit. Accusamus blanditiis enim eveniet fugiat impedit laboriosam laudantium magni, maxime, molestiae nemo provident repudiandae.
    </p>
  </div>

  <div class="main-section">
    <h2>Main section</h2>
  </div>
</div>

我确实读过这篇防止电网井喷文章,但在那篇文章中,他们对其中一列使用了常量像素值,这对我来说是行不通的。我希望主部分是侧部分的3倍,而不指定任何一个部分的恒定像素大小。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-02-06 19:35:57

不要定义区域,使用fr单元定义大小

代码语言:javascript
复制
.page-layout {
  display: grid;
  /*grid-template-areas: "side main main main";*/
  grid-template-columns: 1fr 3fr
}

.main-section {
  background-color: lightgreen;
}

.side-section {
  background-color: orange;
}

.side-layout {
  display: grid;
  /*
   not need since you want the content to define the height
  grid-auto-rows: minmax(min-content, max-content);
  grid-template-areas: "name" "summary" "summary";*/
}
代码语言:javascript
复制
<div class="page-layout">
  <div class="side-section side-layout">
    <h2 class="name">
      Side section
    </h2>
    <p>
      Lorem ipsum dolor sit amet, consectetur adipisicing elit. Accusamus blanditiis enim eveniet fugiat impedit laboriosam laudantium magni, maxime, molestiae nemo provident repudiandae.
    </p>
  </div>

  <div class="main-section">
    <h2>Main section</h2>
  </div>
</div>

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71010836

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档