我的CSS网格表不具有相同的宽度上的列,我想复制的表结构,但与CSS网格。
我使用grid-auto-flow: column;
是因为在我的应用程序中,单元格是动态生成的,并且数量不同。
显示问题的图像:
代码:https://jsfiddle.net/w8sdvnr7/1/
div {
display: grid;
grid-auto-flow: column;
}
p {
border: 1px solid red;
margin: 0;
}
table {
border-collapse: collapse;
}
td {
border: solid 2px red;
}
<h3>Not working: CSS Grid: The cells in the rows have different size.</h3>
<div>
<p>ABC</p>
<p>A</p>
<p>ABCDEFGHIJKLMNOP</p>
</div>
<div>
<p>ABCDEFGHIJKLMNOP</p>
<p>A</p>
<p>AB</p>
</div>
<hr>
<br>
<hr>
<h3>What I want: CSS Table: The cells in the rows have same size.</h3>
<table>
<tr>
<td>ABC</td>
<td>A</td>
<td>ABCDEFGHIJKLMNOP</td>
</tr>
<tr>
<td>ABCDEFGHIJKLMNOP</td>
<td>A</td>
<td>AB</td>
</tr>
</table>
4条答案
按热度按时间dtcbnfnu1#
你的问题有一个解决方案
c7rzv4ha2#
您可能希望使用
grid-template-columns
属性来设置列数,但是,您还应该更新HTML结构以使其工作:以下是更新的fiddle:https://jsfiddle.net/dk9epf57/9/
0x6upsns3#
您已经有了一些答案,这一个是为了补充我前面的评论,并提供一些示例,以帮助您理清您想要的内容,并决定进一步深入研究https://css-tricks.com/snippets/css/complete-guide-grid/或类似https://gridbyexample.com/的resource之类的网格教程
display:table
和display:grid
可能看起来有点相似,但不是。关于示例中使用的
max-content
,您还可以看到How do min-content and max-content work?hmae6n7t4#
你可以用Grid轻松地做到这一点,但首先要让你的HTML更简单一点:
试试这个CSS:
CodePen demo