4

我的一位网页设计师朋友仍然使用表格制作网站,但他非常好地使用 css,我也很好地使用 css,但<div>我在布局中面临的跨浏览器问题比我的朋友更多。

我给了我的朋友一些关于<table>. 阅读我与朋友的整个讨论?

- 你的网站会出现屏幕阅读器的问题

我的朋友- 好的,但我从未接到任何客户关于此的任何电话。

- 如果更改来自客户端,您将花费更多时间来对布局进行任何更改

我的朋友- 我不这么认为,但如果是的话,请告诉我如何节省时间<div>

- 你的网站不能很好地与搜索引擎一起工作。

我的朋友——这不是真的。我已经制作了很多网站,并且任何网站或客户对此都没有问题

I - 布局是旧方式,非 w3c 和非标准方式。

我的朋友- 什么是旧的,什么是新的,我不知道谁是 W3C,什么是标准?无论我在所有浏览器中做什么,对我来说都足够了,我的客户不会为标准和 W3C 指南规则付费

I - 您的网站无法在移动浏览器中运行

我的朋友- 我没问题,我的客户不关心手机

I - 您的网站无法访问?

我的朋友- 你是什么意思不可访问?无论我做什么都适用于所有浏览器。我的任何客户都从未询问过可访问性

I - 你以后不会有更多的工作,有桌子吗?

我的朋友- 好的,当客户不接受带有表格的网站时没问题,那么我将来会学习基于 div 的布局。

我的问题?

  • 使用 table+css 为桌面浏览器制作跨浏览器布局比 +css 更容易,这仍然是真的 div吗?
  • 如果客户不介意我使用DIV+CSS布局代替 布局,开发人员有什么好处?<table>
4

6 回答 6

7

就我个人而言,我发现根据独立的块而不是单元格彼此紧密耦合并相互依赖的表格来考虑布局要容易得多。广泛使用这两种方法后,当您了解它们时,div 会更容易。

维护表格也是一场噩梦。如果要添加列,则需要确保其他行不受影响。即使使用 CSS,表格的 HTML 仍然非常臃肿且难以“一目了然”理解(尤其是嵌套表格)。

如果表格真的是屏幕阅读器的一个大问题,我会感到惊讶(希望该软件足够智能以处理所有类型的网页)。但是,您应该采取所有合理的步骤来确保该网站可供所有人访问,因为这是法律规定。

手机可以很好地显示表格。这里唯一的问题是,如果您想创建一个单独的移动样式表,则几乎不可能删除列格式。

最后,对于 SEO,它没有任何区别。SE 一次又一次地表示,代码的有效性没有任何区别。

于 2010-01-27T11:03:05.147 回答
3

对于大多数人来说,使用表格布局网页可能比 CSS 更直观。

不过要看布局。深度嵌套的表可能会变得非常多毛。CSS 布局选项(目前基本上是浮动)是考虑页面布局的不同方式。我发现它现在比表格更容易,因为我习惯于根据 CSS 浮动来考虑布局。

IE 有一些与浮点相关的错误。我认为它们是 CSS 布局跨浏览器问题的主要来源。

于 2010-01-27T10:18:16.607 回答
2

使用 CSS 框架使使用 DIV 创建布局变得轻而易举!

我个人使用960 Grid System,但也有很多其他的。

于 2010-01-27T11:54:46.760 回答
1

正如没有人提到的那样:HTML 的目标是语义标记。这意味着,您使用的标签具有语义含义。

因此,使用table表格数据很好,也是唯一的方法。
但是使用tablefor layout 与语义相矛盾。

语义的相关性不应被低估,因为语义是万维网目前正在努力的(语义网)。我知道 Semantic Web 和 HTML 不一定有联系,但我想以正确的方式使用 HTML 只会有所帮助。

div用s创建吸引人的布局可能会更困难。这带来了更大灵活性的优势。

正如已经提到的,可维护性对于表格来说可能是一件痛苦的事情。

我个人尽量保持我的 HTML 文件在语义上是正确的,即为正确的目的使用正确的标签。外观(布局所属的)是 CSS 的问题。

顺便提一句。如果您正在搜索CSS vs tables获得很多不错的比较(最有利于 CSS)。

于 2010-01-27T13:00:39.307 回答
1

CSS 更加灵活和简洁。时期。我个人认为 3 个具有有意义名称的嵌套 div 比 3 个表 tr td 更具可读性,对吧?它是新的公认标准是有原因的。我用桌子。但仅在显示表格数据时。一旦你学会了 CSS 中的技巧,你就可以编写完全跨浏览器兼容的超级干净的 div 结构。

我记得有一次我觉得自己像你的朋友。这主要是出于恐惧。不要害怕。请记住,决定代码和浏览器未来的是我们开发人员。也同意这里的所有其他答案。无论您如何(从头开始)或网格布局,您都会对无表格布局更满意。同意上述观点,将网站视为块有助于 TON。祝你好运!

于 2010-01-27T12:50:56.920 回答
0

表格布局会导致更多的 html,更多的 html 会导致更多的代码需要编写和维护,并且通过 js 进行 dom 操作的清晰度会降低。css 代码的数量几乎保持不变(我不是在谈论 2004 年的内联样式标记,这肯定会大大减少 css 的数量)。并且总是有更好的 seo 因素反对表格布局。因此,如果您完全了解 css,那就再简单不过了。也许您需要澄清您在“跨浏览器”声明中包含哪些浏览器,因为现在支持 ie6 和 ie7 甚至不言自明。

于 2010-01-27T10:18:39.553 回答