【发布时间】:2018-08-27 04:26:00
【问题描述】:
我有这张表,其中包含有关其右侧项目的详细信息,我需要将所有单元格放在与最长的一列宽度完全相同的列中,如下面的屏幕截图所示:
如果我使用常规表格,这可以工作,但现在我需要在其顶部添加一个手风琴功能,因此当我单击一行时,该行的相关内容将从每个下方滑下。
在表格行之间添加这些内容 div 的唯一方法是将它们包装在 <tr> 标签中,这不适用于 slideDown() 和 slideUp() 效果。
现在我使用<dl> 标签在小提琴中重新创建了表格,希望以某种方式使用 CSS 解决这个问题,但没有这样的运气。这是链接:http://jsfiddle.net/bbDYX/ - 一切正常,除了宽度问题。
我现在能想到的唯一解决方案是使用 JavaScript 遍历每个右侧列上的每个表格单元格,并将它们的宽度设置为与最高宽度单元格相同的值。但如果可以的话,我想避免这种情况。
有什么想法吗?
【问题讨论】:
-
是的,为什么不使用 colspan 将内容 div 添加到 td 中,然后使用普通表格将内容 div 滑动到 td 中
-
为什么不使用表格并应用手风琴效果而不是破解一个解决方案,在其中获取表格数据并将其显示在
dl和dts 中?将此 SO 视为将手风琴效果应用于表格的示例jQuery - Accordion Effect on a Table 它甚至在答案中有一个 jsFiddle 示例,完全符合您的要求。点击行 - 显示详细信息 -
在这些情况下,我通常不使用 jQueryUI 小部件(事实上,我从不使用它们);相反,我自己编写以满足我的需要(例如,展开/折叠表格行);它只是使用jQueryUI动画的几行代码,整个事情都从中受益匪浅..
标签: javascript jquery css html-table