Css 表格单元格固定高度,与单元格内容无关

Css 表格单元格固定高度,与单元格内容无关,css,cell,css-tables,Css,Cell,Css Tables,我有一个动态表,在从用户获得一些输入后生成,以显示一些表格数据。我需要知道是否有足够的空间为单元格指定一个固定的高度,即使其中一些单元格有一些内容/文本。我想所有的细胞都有30px的高度,无论他们是否有内容或如果他们是空的 这是我的CSS: table { width: 90%; height:100%; } table th, table td { border: 1px solid gray; height:30px !important;

我有一个动态表,在从用户获得一些输入后生成,以显示一些表格数据。我需要知道是否有足够的空间为单元格指定一个固定的高度,即使其中一些单元格有一些内容/文本。我想所有的细胞都有30px的高度,无论他们是否有内容或如果他们是空的

这是我的CSS:

table {
  width: 90%;
  height:100%;

}
    table th,  table td {
      border: 1px solid gray;
      height:30px !important;
      padding: 9px !important;
      width: 16%;
    }
该表由以下代码生成:

foreach ( $this->rows as $i => $row ) {
            $tbody_tr = NHtml::el ('tr class="data-row-' . $i . '"');
            foreach ( $this->fields as $field ) {
                $tbody_tr->add(NHtml::el ('td')->class($field['name'])->setHtml(@$row[$field['name']]));
            }

但是当我有一个包含文本的单元格时,单元格的高度无论如何都会扩大。有什么想法吗?

尝试将“溢出:隐藏”添加到th/td的css中。

表格单元格不会溢出,因此需要将内容包装在div中以使用溢出

以下是一个例子:

HTML:

您的PHP:

foreach ((array)$this->fields as $field ) {
 $wrapperdiv = NHtml::el ('div');
 $tbody_tr->add($wrapperdiv);
 $wrapperdiv->add(NHtml::el ('td')->class($field['name'])->setHtml(@$row[$field['name']]));
}

请注意,我不知道您使用的框架的确切语法,但我猜您的php会是这样的。

我通过删除表格单元格中的填充,并添加规则高度:something来修复它。

它应该说“…分配固定宽度…”,或者应该是sat‘HEIGHT’?这里有一个与解决方案类似的问题:谢谢,但是当我添加溢出并遵循上面提到的解决方案时,表宽度扩展到100%,而不是90%,以容纳空白:nowrap。谢谢,表行是由添加的PHP代码生成的。请检查上面的代码。在哪里可以添加div?请查看我的更新。我不知道您的php框架的确切语法,但我想我做了一个合理的猜测:)谢谢,我将检查这种方法。
table {
    width: 30px;
    border: 1px solid black;
}

table td > div {
    overflow: hidden;
    height: 15px;
}
foreach ((array)$this->fields as $field ) {
 $wrapperdiv = NHtml::el ('div');
 $tbody_tr->add($wrapperdiv);
 $wrapperdiv->add(NHtml::el ('td')->class($field['name'])->setHtml(@$row[$field['name']]));
}