我正在制作一个动态填写的表格。在动态填写内容时,我可以获得null对象。当我获取空对象时,HTML表未正确对齐。例如,我想创建一个表如下:
Header1 Header2 Header3 Header4
Content12 Content14
Content21 Content23 Content24
Content31 Content32 Content34
但目前,该表格如下:
Header1 Header2 Header3 Header4
Content12 Content14
Content21 Content23 Content24
Content31 Content32 Content34
我看过的其他解决方案需要在有空对象时插入& nbsp字符。如果我遵循这种方法,那么对于每一列,我必须检查给定的值是否为null,如果为空,则插入& nbsp字符。我认为必须有一些其他有效的方法来做到这一点。有人可以帮我解决这个案子吗?
P.S:这是一个Ruby on Rails项目,我使用HAML和Bootstrap来创建视图。此外,我的内容行包含一些额外的按钮,即标题行包含的列数少于内容行
下面是我用来创建表的代码。
%table.table.table-hover.table-responsive
%thead
%tr
%th ID
%th Header1
%th Header2
%th Header3
%th Header4
%tbody
-@given_objects.each do |obj|
%tr
%td= obj.id
%td= obj.content1
%td= obj.content2
%td= obj.content3
%td= obj.content4
%td= link_to 'action1', action1_path(obj), class: 'btn btn-primary'
%td= link_to 'action2', action2_path(obj), class: 'btn btn-primary'
%td= link_to 'action3', action3_path(obj), class: 'btn btn-primary'
答案 0 :(得分:1)
我感觉“某事”已经覆盖了表格单元格的display
值的默认CSS值。可能是Bootstrap?但我只能猜测......
但以下情况应该有效:
应用/资产/ ANY_SCSS_FILE.scss 强>
table.show-empty-cells {
td:empty {
display: table-cell !important;
}
}
然后使用.show-empty-cells
类作为表:
%table.table.table-hover.table-responsive.show-empty-cells