【问题标题】:How to set max height to a CSS grid如何将最大高度设置为 CSS 网格
【发布时间】:2018-03-23 19:00:13
【问题描述】:

我有以下 CSS 网格:

.grid-3x4 {
      display: grid;
      grid-template-columns: 1fr 1fr 1fr;
      grid-template-rows: 1fr 1fr 1fr 1fr;
      grid-template-areas:
      'a b c '
      'd e f'
      'g h i'
      'l m n';
    }

尽管模板区域的内容不同,但我希望网格具有 100vh 的固定高度。 我尝试插入:

max-height : 100vh;

到 .grid-3x4 类但不工作。 我还尝试将网格包装在另一个类中,在包含类上设置最大高度,但没有运气。我该怎么做?

【问题讨论】:

  • 好了= 它永远不会在任何事情上工作......
  • @cbroe 已修复,抱歉
  • 你知道了吗

标签: html css sass


【解决方案1】:

您可以通过限制溢出来解决问题,这会“强制”网格停留在其边界内。所以是这样的:

.grid-3x4 {
    overflow: hidden;
}

.grid-3x4 > div {
    overflow: hidden;
}

【讨论】:

  • 正如目前所写,您的答案尚不清楚。请edit 添加其他详细信息,以帮助其他人了解这如何解决所提出的问题。你可以找到更多关于如何写好答案的信息in the help center
【解决方案2】:

max-height(最大高度)设置容器高度的限制。您需要设置min-height(最小高度)来强制容器始终具有该最小高度。

一种简单的方法是设置其中的每个单元格的最小和最大高度为 100vh(我用 10vh 做了示例,因此您无需滚动即可看到):

https://jsfiddle.net/ppvo9y32/2/

您还应该设置一个overflow(例如overflow: hidden)来控制内容超出单元格边界时发生的情况。

【讨论】:

  • 不幸的是,这并没有按照我的要求进行。当您插入比单个字母更大的文本时,网格的各个部分会不断扩大到最小高度。
  • 所以如果我想要一个 100vh 的高度并且我有 4 个 fr,那么每个 fr 的最小高度和最大高度必须为 25vh。它现在正在工作,将在我的项目中广泛尝试。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-05-17
  • 1970-01-01
  • 2018-08-11
  • 2023-03-23
  • 1970-01-01
  • 1970-01-01
  • 2014-02-15
相关资源
最近更新 更多