我需要使用网格,但我的列不是网格的直接子项。网格有两列:
-
-
第2列包含输入框。
标签列应与最大列一样大(但不大于)。输入列应使用所有剩余空间。我尝试了以下CSS/HTML组合。
* {
border: 1px solid black;
background: #2222;
}
.container {
display: grid;
width: 550px;
grid-gap: 10px;
grid-template-rows: [a] auto [b] auto [c] auto;
grid-template-columns: [label] auto [input] 1fr;
align-items: stretch;
}
label { grid-column-start: label; }
input { grid-column-start: input; }
.a { grid-row-start: a; }
.b { grid-row-start: b; }
.c { grid-row-start: c; }
<div class="container">
<div class="a">
<label>A</label>
<input>
</div>
<div class="b">
<label>Label B</label>
<input>
</div>
<div class="c">
<label>Longest C label</label>
<input>
</div>
</div>
我知道
grid-column-start
使用多个网格(每行一个)可以,但我需要同步第一列的宽度。我读过
subgrids
,但它还没有被任何主流浏览器实现。我是否有其他办法来解决这个问题?