代码之家  ›  专栏  ›  技术社区  ›  Matteo Riva

使用表格而不是DIV会给最终用户带来什么真正的问题?

  •  0
  • Matteo Riva  · 技术社区  · 15 年前

    忘记了那些专门属于开发人员的东西,比如代码可维护性和宗教关于语义的战争,我的问题是:使用表会给用户带来什么样的现实问题?是否存在无法正确理解表格布局的设备?它会降低页面在搜索引擎上的相关性吗?

    当然,我说的是一个合理的布局 只有 用于纯css/div中需要黑客攻击的内容(显然,对于表格数据也是如此),而不是像100个嵌套表这样的内容,甚至可以用来代替ul/li。

    4 回复  |  直到 15 年前
        1
  •  1
  •   Pekka    15 年前

    表是如此古老的技术,它们在我所知道的每一个设备和每一个程序中都能可靠地呈现出来。

    我不鼓励使用表格进行布局,除非确实有必要(它位于 很少的 但我不相信在某些方面使用表格的布局会自动对渲染产生负面影响。尽管如此,请随意证明我错了。

    那里 可以 当使用一个表而不是语义正确的元素(例如在有序/无序列表中)时,对于文本到语音转换程序来说是个问题。但我相信任何文本到语音转换或其他可访问性软件都有这样的规定,否则它将无法在今天的互联网上使用。

    在某些情况下,需要智能调整网页大小的浏览器(例如移动浏览器)在处理表格时比处理其他布局元素时遇到更多问题。但这在很大程度上取决于个人的布局和情况。

        2
  •  2
  •   pavium    15 年前

    视障人士的用户代理(亦称浏览器)可以使用网页的语音描述。

    当布局由表完成时,页面内容的描述将成为表的描述,这不太可能有助于理解。

        3
  •  0
  •   Tatu Ulmanen    15 年前

    下面是一个很好的演示,它很好地总结了表中的问题: http://www.hotdesign.com/seybold/06problems.html

        4
  •  0
  •   Paul    15 年前

    关于它,我有一个主要的最终用户论点,那就是将来的校对和页面大小(与加载时间有关,与用户体验有关)。如果您在语义上设计页面,并且使用最小标记方法,那么基于表布局的页面大小几乎总是小于使用基于表布局的页面。

    对于该页面的每一个请求都有更多的信息,这(如前所述)意味着更长的加载时间,等等。但是,Min HTML+External CSS Sheet在大多数生产站点中的加载时间明显更快(参见雅虎的yslow指南),因为CSS Sheet和页面之间通常存在一对多的关系,这意味着您正在利用浏览器的缓存功能(以及其他可能的中间设备缓存)。

    将来的校对注释与设计更改有关。从带有最小标记页的CSS进行大规模可视化布局重新设计比在大多数基于表的设计中更容易实现。有关示例,请参见csszengarden.com。

    显然,在这两种情况下都是YMMV。如果您真的在尽可能少地使用表(例如一页上的一个表,该表中的一行,该行中的三个TDS,每列一个),那么您可能不必担心这些事情。也就是说,IME,最好是学习CSS技术,或者花钱请认识他们的人。设计很快就会变得比你想象的要复杂很多次,把桌子作为一个快速修复工具很快就会变成一个很滑的斜坡。再说一遍,所有人都说“时间”;YMMV。