所以我有这个网格:

+---------+------------------------------+---------+    
|  <div>  |  <p> - 1000 characters long  |  <div>  |
+---------+------------------------------+---------+


p里面有没有空格的超长字符串。 div s是具有固定尺寸的占位符。
产生以上结果:

  display: grid;
  grid-auto-flow: column;
  grid-template-columns: auto minmax(0, 1fr) auto;


但是将minmax(0, 1fr)更改为1fr可以得到:

+---------+----------------------------------------+    
|  <div>  |               <p> - 1000 characters long  |  <div>  |
+---------+----------------------------------------+


它溢出其父级,超出屏幕大小。为什么它的行为不像minmax?

Codepen

评论

您可以编辑第二个ASCII艺术图吗?目前尚不清楚单元格的边缘在哪里,因为+和|没有排队。

#1 楼

因为默认情况下1fr等效于minmax(auto, 1fr)

使用minmax(0, 1fr)时,与独立1fr有所不同。

在第一种情况下,轨道不能小于网格项目的大小(最小大小为auto)。

在第二种情况下,轨道可以自由调整为0的宽度/高度。

更多详细信息:


重新考虑1fr的含义
防止网格区域扩展导致整个页面滚动