我想在我的所有表格行中实现统一的外观和感觉。当您查看下面的示例时,您会看到中间的注释超过 4 行,这不是那么漂亮。
我希望将所有内容限制<td>
为 3 行。
如果要显示的内容多于三行,那么它应该剪切内容... [click for more]
并将内容放入可折叠元素中,以便单击它时会显示整个内容。
后者应该不是问题,但是如何将内容限制为三行?我应该计算角色来做出决定吗?有更好的策略吗?顺便说一句,我正在使用 Django,但我很乐意使用 javascript、jquery 或任何 css 魔法来解决这个问题。
更新:
接受的答案非常好。但是,它带有一个警告,这并不容易解决。如果你有一个td
已经超过三行的邻居,而当前的 td 只有两行,我们将得到一个无限的 while 循环。
while($(this).innerHeight() / $(this).css('line-height').slice(0,-2) >= 3){ .. }
由于$(this).innerHeight()
相邻单元格将高度保持在较高位置,因此无法减小。我认为如果有可能获取当前 td 的 css 并将其完全复制到一个单独的字段中,相邻的 td 不会干扰,我们将获得最佳解决方案。
更新 2:
正如阿萨德所提到的,解决方案是在内容周围放置一个 div 包装器,td
并将类设置在div
内部td
而不是td
本身上。它完美无缺。