2

IE9 中似乎有一个重要的表解析错误,我的应用程序需要支持。(Internet Explorer 9 无法正确呈现表格单元格http://social.msdn.microsoft.com/Forums/en-US/iewebdevelopment/thread/28d78780-c95c-4c35-9695-237ebb912d90/)当有额外的表格标记中的空格。

我在模板中使用 Scala 样式的 for-each 循环来生成表格,该表格在生成的 HTML 中引入了大量空白。我见过的所有 CSS 或 HTML 元标记都不起作用。由于涉及大量返工,我尚未尝试过的一种选择是使用 AJAX 动态生成 HTML,并在显示之前使用正则表达式对其进行清理。我希望找到一个更简单的解决方案。有没有其他人遇到过这个问题,如果有,你做了什么来解决它?

4

1 回答 1

2

不需要任何额外步骤的最快解决方案是在您的视图中编写精简代码,例如:

@for(item <- items){<tr><td>@item.name</td></tr>} 

或者,您甚至可以编写一个静态方法来非常精确地修剪里面的值:

@for(item <- items){utils.Trimmer.addTableRow(item.name)}

在类中使用字符串函数,您将比仅使用裸视图更好地控制空格和其他特殊字符。

最后,您可以使用 Google 的htmlcompressor来压缩和缩小整个站点,有一个选项,remove-intertag-spaces但是在这种情况下,您需要放置一些硬空间来保留所需的空间,即,<td>&nbsp;</td>

看看这个答案来检查如何在 Play 2.x 中很容易地实现它

于 2013-06-18T13:00:40.907 回答