当前位置: 首页 > 面试题库 >

CSS表格单元格等宽

徐俊楚
2023-03-14
问题内容

我在表容器中有不确定数量的表单元元素。

<div style="display:table;">
  <div style="display:table-cell;"></div>
  <div style="display:table-cell;"></div>
</div>

有没有一种纯粹的CSS方法可以使表格单元具有相等的宽度,即使它们内部具有不同大小的内容?

谢谢。

编辑:具有最大宽度将需要知道您有多少个单元格?


问题答案:

这是工作单元数不确定的有效

您可以为每个父对象固定一个宽度div表格 ),否则通常将为100%。

诀窍是使用 table-layout: fixed; 每个单元上的一定宽度触发它,这里是2%。这将触发 另一个
表算法,浏览器会尽力遵守所指示的尺寸。
请使用Chrome(如果需要,请使用IE8)进行测试。可以使用最新的Safari,但我不记得此技巧与它们的兼容性。

CSS(相关说明):

div {
    display: table;
    width: 250px;
    table-layout: fixed;
}

div > div {
    display: table-cell;
    width: 2%; /* or 100% according to OP comment. See edit about Safari 6 below */
}

编辑(2013):当心OS X上的Safari 6,它有table-layout: fixed; 错误
(或者可能与其他浏览器有很大不同,我没有校对CSS2.1 REC表布局;))。为不同的结果做好准备。



 类似资料:
  • 问题内容: 我想在表格单元格中使用CSS,这样,如果文本太长而无法放在一行上,它将用省略号进行剪切,而不是换成多行。这可能吗? 我尝试了这个: 但是,似乎使文本(及其单元格)不断向右扩展,从而使表格的总宽度超出了其容器的宽度。但是,如果没有它,文本在碰到单元格的边缘时会继续换行。 问题答案: 要在表格单元溢出时用省略号剪切文本,您需要在每个类上设置CSS属性,以使溢出起作用。不需要额外的布局div

  • 问题内容: 因此,当我的应用程序在Firefox中运行良好时,我就很喜欢它,但是随后我在IE中打开它,然后…不,请重试。 我遇到的问题是我将CSS显示属性设置为或JavaScript。 我最初使用,但是Firefox在没有该属性的情况下使它变得怪异。 我很乐意在不添加JavaScript来测试IE的情况下做到这一点。有什么建议么? 谢谢。 问题答案: 解决此问题的一种好方法是将该值设置为: 空值会

  • 问题内容: 我想根据第1列中的值给表格单元格上色,如果值不等于第1列中的值,则颜色应为青色,但我的代码不起作用: 问题答案: 是否必须突出显示单元格的决定必须在TableCellRenderer中进行。它不能在JTable中进行。因此,(没有)没有理由要重写JTable中的方法。相反,您可以将列的CellRenderer设置为TableCellRenderer的自己实现。 在此示例中,列2和3接收

  • 问题内容: 许多人仍然使用表格来布局控件,数据等。-流行的jqGrid就是一个例子。但是,发生了一些我似乎无法理解的魔术(它的桌子大声喊叫,可能有多少魔术?) 如何设置表的列宽并使它像jqGrid那样遵守!?如果我尝试复制此内容,即使我设置了every ,只要这些单元格之一的内容大于20px,该单元格就会展开! 有什么想法或见解吗? 问题答案: 您可以尝试对所有行使用标签管理表样式,但是您需要在或

  • table单元格选中,存在合并的单元格时,选中样式和期望的不一样,如何解决这个问题? 不存在单元格合并时不存在这个问题: 存在单元格合并时: 想要的是这种 目前合并实现方案,是获取起始点击的单元格坐标,为选中的每一个单元格坐标添加选中样式。 有无好的解决办法?

  • 问题内容: 如何确保表格的每个单元格都应变成 正方形 而不使用固定大小?当他们改变宽度时要有所 反应 。 问题答案: 您可以使用以下技术中描述的技术:响应正方形的网格。 适应您的带有表和 方形表单元格的 用例,它看起来像这样: