相关疑难解决方法(0)

防止内容扩展网格项

TL; DR:table-layout: fixed CSS网格有什么相似之处吗?


我尝试创建一个带有大型4x3网格的年视图日历,其中包含7x6网格.

日历应填充页面,因此年份网格容器的宽度和高度均为100%.

.year-grid {
  width: 100%;
  height: 100%;

  display: grid;
  grid-template: repeat(3, 1fr) / repeat(4, 1fr);
}

.month-grid {
  display: grid;
  grid-template: repeat(6, 1fr) / repeat(7, 1fr);
}
Run Code Online (Sandbox Code Playgroud)

这是一个有效的例子:https://codepen.io/loilo/full/ryXLpO/

为简单起见,该笔每个月都有31天,周一开始.

我还选择了一个可笑的小字体来演示这个问题:

网格项(=日单元格)非常精简,因为页面上有数百个.一旦日期数字标签变得太大(可以使用左上方的按钮随意使用笔中的字体大小),网格的大小将会增大并超过页面的主体大小.

有什么方法可以防止这种行为吗?

我最初声明我的年度网格在宽度和高度上都是100%,所以这可能是重要的一点,但我找不到任何符合网格的CSS属性.

免责声明:我知道有很简单的方法可以在不使用CSS Grid Layout的情况下设置日历的样式.然而,这个问题更多的是关于该主题的一般知识而不是解决具体的例子.

css css3 grid-layout css-grid

113
推荐指数
3
解决办法
6万
查看次数

为什么minmax(0,1fr)适用于长元素而1fr不适用?

所以我有这个网格:

+---------+------------------------------+---------+    
|  <div>  |  <p> - 1000 characters long  |  <div>  |
+---------+------------------------------+---------+
Run Code Online (Sandbox Code Playgroud)

里面p有超长的字符串,没有空格.divs是具有固定尺寸的占位符.这产生了以上:

  display: grid;
  grid-auto-flow: column;
  grid-template-columns: auto minmax(0, 1fr) auto;
Run Code Online (Sandbox Code Playgroud)

minmax(0, 1fr)改为1fr给出这个:

+---------+----------------------------------------+    
|  <div>  |               <p> - 1000 characters long  |  <div>  |
+---------+----------------------------------------+
Run Code Online (Sandbox Code Playgroud)

它从其父级溢出并超出屏幕大小.为什么它不像minmax?

Codepen

css css3 css-grid

19
推荐指数
1
解决办法
3312
查看次数

标签 统计

css ×2

css-grid ×2

css3 ×2

grid-layout ×1