人们普遍认为应该避免在 HTML 中使用表格进行布局。但每条规则都有例外。我正在设计一个 SPA(单页应用程序)——其页面类似于桌面应用程序使用的布局。
显然 HTML 不适合这些类型的页面,但我别无选择。使用 DIV 实现这些布局简直就是地狱,需要混合 CSS 技巧、硬编码值,甚至是调整大小事件的 JS 计算。我最近问过这个关于使用网格框架实现这些布局的问题。
但后来我停下来重新考虑基于表格的布局是否合适。典型的批评似乎不适用于 SPA 的独特案例:
内容与布局的分离——因为 SPA 并不是真正的内容(它只是一个带有 AJAX 填充数据的骨架),所以这个论点不适用。这只是一个界面;我不希望谷歌索引它。
表的可维护性较差——在这种情况下不是。使用 DIV 实现这一点必须经历的 CSS 地狱的维护成本要高得多。
表格的渲染速度较慢——当然,但是我们将使用替代方法创建的复杂布局将需要比表格更多的计算来渲染。哎呀,我们通常使用 JS 调整大小事件来补偿固有的限制。浏览器在渲染引擎中本地执行此操作会更有效率。
鉴于这些论点,基于表格的布局是否适合 SPA 的特定情况,还是我没有考虑其他一些重要因素?还有更好的选择吗?