表格?去你的吧
2004 年 5 月 14 日,星期五 (格林威治标准时间上午 10:47)
备受瞩目的 CSS 倡导者们已被绑架,取而代之的是那些极力吹捧表格布局优点的人。这就像在《人体复苏》的结尾与唐纳德·萨瑟兰说话一样,我们发现自己低语着:“安迪……?安迪……?你还爱 CSS……对吧?”
部分原因是为了回应 David Emberton 令人啼笑皆非的反网页标准谬论,这些关于表格用于布局的“魔鬼代言人”客观批评(由 Andy Budd 和 Dave Shea 引发)不幸地没有抓住重点,丝毫不能说服我。所以,这是我对此回应的回应,以及我轮流客观评价的机会,结果却略有不同。客观并不意味着骑墙观望,我以自豪和自信客观地得出结论:在布局方面,表格几乎没有或根本没有存在的空间。
一个误区是 CSS 是“难”的。它并不难。嗯,不比任何其他方法更难。问题在于,经验丰富的网页设计师一开始就使用表格进行布局,然后不得不彻底改变他们的方法来以 CSS 的方式做事。
我多年来一直使用基于表格的布局,当我开始尝试 CSS 布局时,我卡住了。“用表格更容易,”我想。但这仅仅是因为我习惯了表格。我知道如何操纵它们。任何改变,尤其是如此激烈的改变,都不可避免地会遇到困难。但我甚至还记得当我第一次自学如何使用表格进行布局时。那也让我头疼不已。回想起来,我甚至不得不说,学习表格布局比学习 CSS 布局更困难,尤其是那些跨行、跨列和占位符 GIF。
Andy Budd 提出的另一个奇怪的观点是,一个 CSS 设计的页面可能和表格页面一样重,甚至更重。他的理由是,因为网站的所有样式都在一个文件中,并且需要先下载(通常是在用户访问首页时),所以这个 CSS 文件实际上可能很大(包含的样式远不止首页所需),因此设计是“头重脚轻”的。但是,如果 CSS 文件变得如此之大以至于以这种方式影响下载时间,那么为什么所有的样式都在一个文件中呢?你并非只能使用一个 CSS 文件,而且如果其中有相当大的部分只适用于特定部分,你*不应该*使用一个 CSS 文件。根据我的经验,从为小型手册式网站开发页面到庞大的数据库驱动的多部分系统,我从未遇到过首页(包括必要的 CSS 文件)比基于表格的等效页面更重的情况。那些 table、tr、td 标签占用了大量的空间,而在实践中,CSS 布局可以大大减小文件大小。
抛开语义(因为用表格布局页面本质上就是在做这件事),网页标准布局仍然具有分离内容和呈现的巨大优势。表格会把你锁定在一个设计中。如果你需要改变它,你需要进入页面并调整表格结构(“好吧……所以……那个单元格跨越三行,这个单元格跨越五行,它旁边是另一个单元格……哦,该死!这是怎么回事?!”)。无法通过 CSS 文件进行简单的全局更改(这还有额外的优点,可以增加网站视觉一致性的可能性)。而且你别想设备独立性。更别说那些选择使用自己样式表的人了。
我认为表格的好处很少。用于布局表单。但表单本身也可以看作是表格,所以这是合理的。网景 4?我甚至不认为支持如此老的浏览器是一个理由。对于绝大多数拥有更强大浏览器的用户来说,好处远远大于对那些只会看到未样式化但功能齐全的内容的极少数用户的影响。这些支持表格(是的,我知道他们只是“魔鬼代言人”)的论点似乎归结为“更容易”,这是胡说八道。如果你想继续享受不方便的解决方法带来的舒适感,那是你的选择。但如果你想挑战极限,制作出最通用、最易访问、最轻量级的页面,那就付出努力去切换吧。如果你一开始就使用了,就不会有问题了。HTML Dog 的读者们给我提供了很多积极的反馈,他们设法在不考虑表格的情况下进行页面布局。
“别动没坏的东西”、“它是网页设计师工具箱里的工具”是一些出现的评论。表格布局就像一把破旧的软金属螺丝刀,手柄是粗糙的木头。你仍然可以用它拧螺丝,只是我更喜欢用我那辆强大的电动螺丝刀。螺丝拧得更直,我的手也免受水泡之苦。
评论
评论2
说得太对了,兄弟——我对自己也说了同样的话,虽然方式没你这么啰嗦。
不过,越快有人写一篇全面的“如何只用 CSS 进行任何表单布局”的文章越好……
Matt Pennell 在 2004 年 5 月 14 日星期五下午 12:35 GMT 这样说道。
评论5
我真的不想卷入“我的更大/更好/更标准”的争论。但是,各位大师们,请记住,对于布局来说,表格比 CSS 更容易(恕我直言,我是个新手)。我曾与 CSS 无休止地搏斗(同时查阅了出色的支持网站——包括 htmldog),而且 CSS 在任何时候都没有变得“直观”。至于 Zengarden!我喜欢它,但对我来说,它简直是另一个星球。
说了这么多——我还是会继续追求/渴望。
ChrisP 在 2004 年 5 月 14 日星期五下午 1:55 GMT 这样说道。
评论6
大的 CSS 文件不会困扰我。为什么?因为它们会被缓存!如果你不得不将你用来制作单个 CSS 文件的一半布局代码放回网站的每一页中,以表格和字体标签的形式,那么你就会看到每页的下载时间增加,你也会失去 CSS 提供的修订效率。CSS“头重脚轻”的想法对我来说完全不成立。
Chris R 在 2004 年 5 月 14 日星期五下午 3:36 GMT 这样说道。
评论7
我也想回应 ChrisP。嘿 Chris,我多年前就开始使用 HTML 表格,还记得经历了与后来学习 CSS 无表格设计相同的学习曲线。并非为了争辩,但现在我已经学会了两者,并且可以回顾这段经历,我不得不说,我认为认识到有效学习这两种方法都有其挑战和缺点是一个很好的观点。我实在说不出哪一个更难,而且尽管 CSS 提供了所有优势,我也不打算退回去了。我确实会在这里或那里使用表格来处理某些不值得花 CSS 精力去实现的条目,或者在浏览器兼容性提高之前可能太脆弱的项目。而且我坚信语义化代码比我们过去到处使用的堆积表格和字体标签要干净得多,也更直观。至于 CSS 标记本身,它比字体标签更复杂,但它是直接且有良好文档的。如果有什么的话,我会说 CSS 的难度不在于 CSS 本身,而在于糟糕的浏览器兼容性,这会导致意外行为和对 hack 的需求。
Chris R 在 2004 年 5 月 14 日星期五下午 3:46 GMT 这样说道。
评论8
我同意 Chris R 的观点。虽然使用 CSS 和语义标记对我来说仍然相当新,但我非常喜欢它,胜过表格。它对我来说更有“意义”。然而,有时当我的老板催促我尽快让客户的界面上线,我的艺术部门设计了一个表面上适合表格布局的东西,而且我遇到了浏览器兼容性问题时,我就会回到表格。我不喜欢这样,但我会尽量在“内容单元格”中使用尽可能多的语义标记,但我在使用 CSS 进行布局方面还太新。不幸的是,在这种情况下,部署速度占了上风。
Xth 在 2004 年 5 月 14 日星期五下午 4:33 GMT 这样说道。
评论9
说实话,兄弟!我不可能说得更好。我的意思是,为什么要做一半的事情,用 CSS 来做大部分事情,然后如果你做不到就退而求其次用表格——简直是字面意思。谈论一个完全有效的反驳——说得好。
Scott Blanchard 在 2004 年 5 月 14 日星期五晚上 9:21 GMT 这样说道。
评论10
有趣的是,在我读到这篇文章之前,我刚在 mezzoblue 上发了这篇文章
http://www.mezzoblue.com/archives/2004/05/13/gasp_tables/#c004943
很高兴我不是唯一一个这样想的人。
我仍然不相信“表单就是表格数据”这种鬼话。表单不就是用来输入数据的界面吗?如果是这样,表单本身怎么会是数据,从而成为表格数据呢?当然,它们通常以表格的形式呈现,但那只是一种,尽管很常见,但呈现方式,不是吗?
Luke Redpath 在 2004 年 5 月 14 日星期五晚上 11:24 GMT 这样说道。
评论11
远离这个是非之地,使用框架。
说真的,PPK 提供了使用框架的好理由:http://www.quirksmode.org/about/frames.html
我从表格切换到 div 几乎没有遇到什么麻烦。
新的 dantecubed.com 即将上线,但它使用了框架(但框架选项卡使用了列表项)。
Dante 在 2004 年 5 月 15 日星期六凌晨 12:47 GMT 这样说道。
评论12
在我看来,以及从阅读那两篇文章中获得的,表格被推广的唯一方式是作为一种更容易的方式来完成那些用 CSS 很难做好的事情,而且可能需要通过添加少量内容来重建。例如,想到表格式列(等高,背景图像)。他们并没有提倡回到纯表格,也没有提倡回到纯表格但用 CSS 代替字体标签。他们提倡使用表格标签作为一种最后的手段,来解决非常有限的一组设置,直到 CSS3 实现——这样他们今天就能完成工作。对某些人来说,这可能是极其邪恶的,但要么这样做,要么花五个小时写代码并在浏览器之间进行测试。
Jesper 在 2004 年 5 月 15 日星期六凌晨 12:52 GMT 这样说道。
评论13
谁需要表格来布局表单?
http://www.themaninblue.com/writing/perspective/2004/03/24/
Cameron Adams 在 2004 年 5 月 17 日星期一凌晨 2:39 GMT 这样说道。
评论14
我发现 CSS 很难,而我在这该死的领域工作。为什么我的网站看起来如此基本?因为我做得不好。所以,随你便吧,你可以自由地宣称 CSS 普遍更容易这个不真实的说法。对于那些想要制作有效代码布局的人来说,他们意识到生命太短暂了,永远无法收回那些时间,就让他们使用该死的表格吧。让他们专注于有效代码。停止攻击。
Joe Clark 在 2004 年 5 月 17 日星期一凌晨 3:40 GMT 这样说道。
评论15
我不得不说,CSS 比表格难得多,而且我在这两方面都没有太多经验,无法产生偏见。我大约 6 周前创建了我的第一个网页,并且很容易学会了表格(我最后一次编程是 20 年前在 Fortran 和 Basic)。然后我使用了一个完全用 CSS 完成的模板——实际上,是 Blogger.com 上的一个你的模板。6 周后,我仍然难以让它正常工作。表格只需要几分钟;CSS 至少需要我 10 倍的时间。
由于我对表格没有太多经验,你不能将我的 CSS 困难归因于某种 HTML 表格的偏见。
Michael 在 2004 年 5 月 17 日星期一凌晨 4:20 GMT 这样说道。
评论16
Luke Redpath:“我仍然不相信‘表单就是表格数据’这种鬼话。表单不就是用来输入数据的界面吗?”
表单也可用于更新数据。这涉及到将数据反馈给用户。
“如果是这样,表单本身怎么会是数据,从而成为表格数据呢?”
这将取决于表单捕获/更新的数据结构。我相信数据的结构无论是否可以在表单中编辑,其结构都是相同的——是相同的数据。
“当然,它们通常以表格的形式呈现,但那只是一种,尽管很常见,但呈现方式,不是吗?”
这也是一种结构。
Isofarro 在 2004 年 5 月 17 日星期一上午 11:25 GMT 这样说道。
评论17
在我工作的公司,我们通常有一个“旧的”编码网站的方式,除了我和另一位同事。我还没有开始通过纯 CSS 的方式构建企业网站,这仅仅是因为一些我们合作的公司付了很多钱,他们希望他们的网站看起来不错,而且不幸的是,这些人仍然使用旧浏览器,比如 NS 4。事实上,一位客户发誓说她不会放弃家里的浏览器,即使我同事已经向她解释了,这是 8 年前的过时产品等等。
当我为我的公司构建网站时,我一直在做混合布局。我将内容和呈现分开,但仍然使用 1 个表格来进行整体结构。我*不*使用嵌套表格。当我能使用 div 进行布局时,我就会这样做。
Bryan 在 2004 年 5 月 17 日星期一下午 1:54 GMT 这样说道。
评论18
刚刚编码了一个大量使用纯 CSS/XHTML、无需表格的内部网,我可以完全理解那些使用表格进行基本布局的人。即使有所有的 hack,在所有浏览器/平台上将所有内容精确对齐仍然是不可能的,而且与我的预期相反,用户确实会注意到一个框低了 5 像素或他们的版本缺少了边距。更糟糕的是,他们会生气并打电话给你,认为受到了歧视,特别是 Mac IE5 用户,他们认为你反苹果。
此外,对于那些编码页面/模板将由使用 Dreamweaver 等程序能力较弱的人编辑的人来说,也面临着问题。用这些程序造成的损害,在纯 XHTML/CSS 页面上肯定比表格/字体页面要大。在这方面,Contribute 是一个进步,尽管习惯使用 Dreamweaver 的人不喜欢被告知要使用它。
不可否认,Dave Emberton 的文章是错误的、信息不足且煽动性的。然而,它作为反映了许多 Web 开发人员和设计师对 Web 标准及其倡导者的态度来看,是有益的阅读。我相信标准社区应该更多地关注那些已经运行大型成功表格/字体网站的人,为他们提供过渡到语义标记/CSS 方法的最佳路线。如果你只是告诉那些已经运行*成功*网站的人,他们做得不对,应该按你的方式做,他们显然会生气。应该采取更多的“胡萝卜”和更少的“大棒”。
如果能有所帮助的话,我很高兴为我的内部网采取了纯 CSS 方法,我相信,即使花费了大量时间进行调整和 hack,它已经节省了时间,并且大大提高了跨页面的一致性。更不用说更低的页面重量,以及显然更高的技术完整性,这无论你做什么产品都很重要。如果有人感兴趣,我很乐意分享我从“黑暗面”转向的经验。
附注:Pat,恭喜你的网站。非常令人印象深刻。
Rob Clarke 在 2004 年 5 月 17 日星期一下午 2:20 GMT 这样说道。
评论20
我花了一年多的时间才弄清楚如何进行“正确的”表格布局。我花了一个月的时间才弄清楚如何进行纯 CSS 布局。这甚至包括了对常见 bug 的解决方法,比如 Box Model Hack。所以即使那些以“更容易”和“我懒”为借口的人也是胡说八道。在我看来,那些抗拒放弃老式表格布局的人只是害怕尝试新事物。这非常可悲,因为我认识的每一位 Web 专业人士都进入了这个领域,因为它是一个新领域。而且我们大多数人都很高兴,因为得益于新兴技术和不断发展的标准,如 CSS,这个领域将保持新鲜。
Derek Pennycuff 在 2004 年 5 月 17 日星期一下午 6:56 GMT 这样说道。
评论21
[引用] 当我为我的公司构建网站时,我一直在做混合布局。我将内容和呈现分开,但仍然使用 1 个表格来进行整体结构。我*不*使用嵌套表格。当我能使用 div 进行布局时,我就会这样做。 [/引用]
说得对!万事皆有度。
我设计一个网站时,我先设计,后编码。我发现使用纯 CSS 布局,就像一个粗鲁的后座司机,最终总是会稍微影响设计。这通常是浮动元素在居中 div 中时出现的问题——可怜的页脚元素向上折叠;不浮动,使用定位和边距?跨浏览器灾难!通常一个简单的表格可以解决这么多问题。
使用 CSS 需要你为任何非简单布局使用 hack。避免 hack 本应是 Web 标准运动的核心。
pairustwo 在 2004 年 5 月 17 日星期一下午 7:20 GMT 这样说道。
评论22
Isafarro:“这将取决于表单捕获/更新的数据结构。”
好的,我同意,这是我没有考虑过的一点。如果你要生成一个 HTML 表单来更新电子表格的内容,那么电子表格数据就需要以表格形式显示,因为这是数据的固有结构。因此,当生成表单时,使用表格是有意义的,因为你正在呈现表格数据以供修改。我对此无话可说。你还可以扩展到允许你向电子表格添加值的表单。以表格形式呈现表单是有意义的,因为你输入的数据本质上是表格形式的。
我敢肯定你也会同意我,90% 的表单都用于捕获一系列结构并非表格的数据,尽管这些数据通常以表格格式存储,比如简单的数据库表——但它也可能存储为 XML 数据或字符串。这种表单涵盖了大多数 Web 表单……注册表单、调查、此评论表单等,因此表单不应具有固有的表格结构。因此,用表格结构标记表单是不正确的。
我将在未来几天内在我网站上更深入地探讨这一点,我有一些漂亮的 CSS 样式示例,它们不使用浮动,还有一些更复杂的表单作为实验。
Luke Redpath 在 2004 年 5 月 18 日星期二凌晨 1:10 GMT 这样说道。
评论23
杀死一个人比解决分歧更容易。
是的,CSS 确实比表格布局难。开卡车比骑自行车难,但这并不意味着自行车是合适的替代品。类比的缺陷仅仅在于,重载会摧毁自行车,而误用表格标记会使快速下载不那么容易,使网站的维护和改版更加困难,等等。
练习 CSS。习惯它。当然,在表格布局中我们习惯的一些东西在目前的 CSS 实现中是无法复制的。随着时间的推移,它会实现的。现在就加入进来吧,因为当美学上没有理由偏爱表格布局时,你就会做好准备。
Neal 在 2004 年 5 月 18 日星期二凌晨 6:01 GMT 这样说道。
评论24
说得好,Neal,不过那个卡车比喻让我困惑……:)
老实说,我一点也不觉得 CSS 有限制了。事实上,我觉得要快速实现我想要的大部分效果要容易得多。我真的觉得我不需要经常使用 hack。
一旦你学会了如何用 CSS 进行布局,一切都会变得自然。我现在实际上觉得用表格布局网站有点麻烦。我会把从表格切换到 CSS 比作从过程式编程切换到 OOP——你只需要改变解决问题的方式。
别抱怨了,表格用户,把你们的事情处理好!
Dan Webb 在 2004 年 5 月 18 日星期二下午 1:04 GMT 这样说道。
评论25
>“我客观地得出结论……”
我不得不在那里停下来。这难道不是自相矛盾吗?真正客观的结论不会被“自豪”所玷污。
Cheeky One 在 2004 年 5 月 18 日星期二下午 3:11 GMT 这样说道。
评论26
嗯,我认为 Zeldman 在他的书《Designing with Web Standards》中很好地阐述了 CSS 的论点。但他也承认,僵化地坚持任何一种方法都可能阻碍目标,那就是简单地制作网页。(目标是这样,对吧?)
CSS 的一些好处包括尽可能让尽可能多的现有互联网设备都能访问页面,但你肯定已经听过了。
让我们面对现实——使用表格进行页面布局是在存在
而浏览器只能做更多事情的情况下的一种巨大的权宜之计。嗯,现在我们有了能做更多事情的浏览器。是的,存在问题,但有一句中国谚语说:“进步在于用新的问题替换旧的问题。”
Chris 在 2004 年 5 月 18 日星期二下午 5:27 GMT 这样说道。
评论27
我,至少,实际上同意 Andy 和 Dave S. 的观点(甚至在我的网站 www.jeremyflint.com 上写了一点)。
如果你正在设计一个网站,而且你知道有很大一部分用户使用 NN4.79,你为什么想忽略那部分用户呢?特别是如果用户由于某种原因被锁定在使用旧浏览器,比如许多 K-12 教育系统的情况。
我认为 Andy 和 Dave basically 是说要警惕你的受众,并相应地进行设计。如果有人从他们的文章中读出他们应该回到基于表格的设计,那么他们应该更仔细地重读。
Jeremy Flint 在 2004 年 5 月 19 日星期三晚上 7:06 GMT 这样说道。
评论28
我想我因为年轻,相对来说才刚入行,所以我个人认为 CSS 比表格容易得多。我从来没有真正学会表格布局(我那时对设计不太感兴趣),而且我感兴趣 Web 设计一段时间,*因为*表格布局太难理解了。如果我偶然设计了一个表格布局,那也是因为大量使用了 Dreamweaver。所以,出于他们声称表格更容易的同样原因,我认为 CSS 更容易。这是我学到的并且感到舒适的东西。
Michee Rose 在 2004 年 5 月 20 日星期四下午 12:37 GMT 这样说道。
评论29
我用表格做到了 CSS 做不到的事情。
我用 CSS 做到了表格做不到的事情。
我用 CSS 和表格做了很多事情。
staylor 在 2004 年 5 月 20 日星期四晚上 7:51 GMT 这样说道。
评论31
你难道不认为 Dave 写那篇文章是因为他在 MSN 的某种职责范围内吗?网站本身就存在许多可访问性和 Web 标准方面的问题。
“伙计们,我们能修好网站吗?”
“不行。一点办法都没有”
“那我们写一篇文章来抨击 Web 标准吧。也许还顺便侮辱残疾用户。”
我建议所有订阅该杂志的人都取消订阅并退回剩余期数。任何还在家里或办公室里剩下的副本都可以整齐地切成 5x6 英寸的方块,放在马桶旁/厕所边。
Mark Thomas
Mark Thomas 在 2004 年 5 月 21 日星期五下午 1:00 GMT 这样说道。
评论32
CSS 更容易。使用 CSS 很有意义。
如果一个人看基本块状[区域]项目和内联项目之间的基本原理,并开始考虑内容空间甚至交付顺序……就会变得更容易。如果对样式(命名的语义)应用或使用了更好的名称。样式、站点或页面(文档)将更容易调试、排列、调整、操作、修改、更新等。
很棒的想法。
CSS 非常灵活。
多年来,我一直先学习表格布局,操作, hack 等等,手工编写标记,代码,并决定在 1998 年、1999 年尝试 CSS,使用基本元素 [文本、链接、一些盒模型属性],我发现将呈现元素转换为 CSS 更容易、更快捷。
我希望学校和学院从一开始就教授 CSS 和 Web 设计的基础知识,这样在过渡、说服或再培训他人时就会面临更少的挑战。
[附注:Cameron,你的表单工具资源很棒。]
holly 在 2004 年 5 月 21 日星期五下午 4:33 GMT 这样说道。
评论33
我同意 David Emberton 的观点。
让我们面对现实吧,我的意思是,我看到博客文章说‘嘿,有人写了一篇很棒的文章,讲了为什么你应该使用 Web 标准,你可以让你老板去读它’等等。这本身就说明有问题。
表格有效,表格很容易,表格就在那里。在纸上说,或者以某种方式证明 CSS 更容易,也不会让人们使用它。(它是否更好,或者你认为它是否更好,这都不重要。完成工作才重要。)
不要误会我的意思,我相信应该有 Web 标准。只是我认为当前的标准的无效,与其去捍卫无效的东西,不如去修改(或完全替换)它们。第一步是接受它们无效。
Flash 怎么样?SVG 怎么样?我不认为 David Emberton 的文章一点也不荒谬……
Burak KALAYCI 在 2004 年 5 月 21 日星期五下午 6:37 GMT 这样说道。
评论34
CSS *确实*很难。它是一个巨大的麻烦,而你之所以忘记了,是因为你已经编程自己去记住了所有主要浏览器异常行为的古怪和扭曲的复杂性。你自己也承认,学习 CSS 是一个巨大的痛苦。我不是程序员或网页设计师,但我是一个相当称职的代码编写者。大多数人看到我的代码会反应说“呃……”,但这又是另一回事……:-)
现实情况是,CSS 的学习曲线如此之陡峭,以至于大多数人根本无法使用。事实上,即使是专家也无法使用,除非他们每天都接触它,以保持所有神秘知识的新鲜感。(IE 在这种情况下会怎么做,再次?)此外,工具也很古老。当然,TopStyle 有点帮助,但我还没有见过一个 WYSIWYG 工具能像 Namo WebEditor(甚至那个糟糕的 GoLive)用表格那样构建 CSS 页面。在了解*太多*东西之前,根本不可能构建一个非琐碎的 CSS 布局。CSS 编程(它*确实*是编程)太像早期 Mac 程序员对“Inside Macintosh”(Apple 原始的 Mac 编程指南)的评价了:它包含 24 章,而要理解你正在阅读的那一章,你必须已经完全理解了其他 23 章。如果这不能描述今天的 CSS 状况,我也不知道是什么了,只是还没有人费心把这 24 章都放在同一个绑定里。
虽然我欣赏 CSS 及其好处,但我最近决定继续使用表格。它们有效。CSS 实际上无效。而且我实在不关心 CSS 的好处,不愿意忍受痛苦。如果这意味着我的页面无法访问,那就太糟糕了。除非我们有能够“神奇地”处理使用 CSS 所带来的麻烦的工具,否则我们就不会拥有一个可访问的语义化 Web。这尤其适用于我们那些没有真正动力去学习所有 CSS 技巧的人,而且不经常构建网站,以至于没有希望让所有陷阱保持新鲜。去用表格吧!
Dub Dublin 在 2004 年 5 月 22 日星期六晚上 9:05 GMT 这样说道。
评论35
CSS 大师们,我该如何在 CSS 中做到以下表格?
<table><td><td>Col1</td><td>Col2</td></tr>
<tr><td>Data1</td><td>Data2</td></tr></table>
pb 在 2004 年 5 月 22 日星期六晚上 11:48 GMT 这样说道。
评论37
PB,不确定这是否是你想要的,但决定使用 CSs 并不意味着你停止在网页中使用表格。它意味着你停止使用表格来确定页面的视觉布局。你的例子看起来像一个用于显示表格数据的表格,而这正是表格标签设计的用途。
然而,所讨论的表格应该看起来像这样
<table><tr><th>Col1</th><th>Col2</th></tr><tr><td>Data1</td><td>Data2</td></tr></table>
Small Paul 在 2004 年 5 月 23 日星期日早上 10:49 GMT 这样说道。
评论38
“如果你正在设计一个网站,而且你知道有很大一部分用户使用 NN4.79,你为什么想忽略那部分用户呢?特别是如果用户由于某种原因被锁定在使用旧浏览器,比如许多 K-12 教育系统的情况。”
1. 为什么只停留在 Netscape 4?肯定还有 Mosaic 1 或 IE 3 的用户。还有那些完全没有浏览器的人。事实是,当你创建一个*Web*页面时,你使用的是 Web 标准。当你希望查看 Web 页面时,你必须认识到需要一个 Web 兼容的浏览器。归根结底,你不能 clinging 到一个非标准的浏览器。重点是,使用 XHTML 和 CSS 的优点 outweighs 给予 Netscape 4 用户未格式化内容的轻微缺点。
2. 我非常怀疑是否有人被“锁定在 Netscape 4 中”。如果教育工作者有旧电脑并且仍然希望为他们的学生提供 Web 浏览器,Opera 更快更好。教育工作者应该意识到,不使用实际的、符合标准的*Web*浏览器的代价可能是无法查看网站!
Paul D 在 2004 年 5 月 24 日星期一凌晨 1:10 GMT 这样说道。
评论39
我几乎完成了使用表格作为主要布局方法的非常大的项目。很抱歉我只在这个过程的中间才了解到 CSS。然而,不愿从头开始,我决定尽我所能地混合 CSS 和表格。这非常困难,但我很高兴我现在拥有一个完全有效的基于表格的布局,文件大小小,并且所有内容都使用 CSS 进行了样式设置。
对于那些害怕 CSS 的人,我可以告诉你,一旦你开始使用它,一切都会变得明朗。语法是类英语的,非常直观,完全文档化且干净。表格只会使页面混乱,更新部分是一场噩梦,因为你必须避免破坏表格语法。我发现一个非常好的解决方案是在表格单元格内使用 div,然后操作它们,而不是不断地调整单元格大小和重新排列。
CSS 是未来,我很高兴我已经摆脱了表格阶段。旧的浏览器兼容性可以通过 CSS 来保证,因为内容(这是网站最重要的部分)完全可见,而且我不认为那些使用旧浏览器的人是出于乐趣。他们想搜索内容,而不是设计。设计部分只在“较新”的浏览器中显示,这些浏览器已经存在了大约 4 年,很难相信用户仍然使用过时的软件。
CSS 的学习过程是一个持续的任务,但任何其他技术都是如此。此外,CSS 提供了轻量级页面、干净设计和内容的灵活性,而表格只提供一些视觉结构。你应该找到自己使用 CSS 而不是表格的原因。如果你受过表格的教育,CSS 应该非常容易理解;为了能够设计复杂的表格结构,你现在脑海中必须具备的逻辑和秩序将极大地帮助你简单地定位一组框。
Dorel Octavian CIONVICA 在 2004 年 5 月 24 日星期一下午 6:02 GMT 这样说道。
评论40
我很惊讶这样一个非话题能被变成一场辩论。这就像在金枪鱼三明治和火腿三明治之间做选择。好吧,我想你们那天过得很慢。而且我还没想睡觉,所以我也加入进来。
我个人更喜欢 CSS 布局。它们很性感,我的老板不懂它们,而且它们还能帮我赢得所有女孩!但我担心你用来支持 CSS 与表格的论点并不充分……
> 一个误区是 CSS 是“难”的。它并不难。
> 嗯,不比任何其他方法更难。
这真的取决于。你看过 CSS3 吗?现在那才真是难。而且极少有人能声称理解 CSS2 内联盒模型。
但确实,CSS 并不算太难。真正难的是,正如邮件列表和 Usenet 上无穷无尽的问题流所显示的,如何让所有该死的浏览器合作。我说的不是 Netscape 4;我说的是 Internet Explorer、Mozilla、Firebird/Firefox、Opera 等等最新版本。这些所谓的“标准”浏览器,它们是一场噩梦!这甚至还没触及“quirks”和“standard”模式的浑水。
这正是简单的表格网格大放异彩的地方:如果我想要三列三行,最后还有一个页脚,那么它就会在整个浏览器世界中都如此。它如此通用,即使是 Lynx 也能处理,只要你稍微注意一下。
> Andy Budd 提出的另一个奇怪的观点是,一个 CSS 设计的
> 页面可能和表格页面一样重,甚至更重。
代码,嗯?“重 CSS 文件”的论点确实不那么聪明。但是,代码权重真的那么重要吗?是的,你可能可以通过用 DIV、SPAN、类、ID 和几行 CSS 来替换 TABLE、TR 和 TD 来节省几字节。当然,在根本不使用图形的网站上,这可能是一个因素。但真正损害带宽的是导演和他那只秋田犬的真实色彩肖像,你实在无法说服他们去掉的那个糟糕的 Flash 开场动画,等等。而这些,无论它们被包裹在表格中还是 div 中,重量都是一样的。
> 表格会把你锁定在一个设计中。如果你需要改变它,
> 你需要进入页面并调整表格结构
这是一个非常奇怪的论点!根据我相当多的两种方法的使用经验,两者所需时间差不多。无论我花一两个小时调整 CSS 文件以实现跨浏览器兼容性,还是花一两个小时调整 HTML 表格布局模板文件和 CSS 颜色/字体布局文件,其结果都差不多。
> Netscape 4?我甚至不认为支持如此
> 老的浏览器是一个理由。
跟上时代,伙计!如今,你应该嘲笑的死重是 Internet Explorer 6 ;-) 。
让我们面对现实吧,伙计们。CSS 不是救世主,表格也不是恶魔,反之亦然。在编码时只管运用你的常识,一切都会好起来的。
现在,我的金枪鱼三明治在哪里?
Matthias
Matthias 在 2004 年 5 月 24 日星期一晚上 10:36 GMT 这样说道。
评论41
当然,CSS 确实难以在所有浏览器中正常工作。我测试了各种版本的 IE、Netscape 和 Opera,以及 Mozilla Firefox、Lynx 和 WebTV Viewer。不幸的是,我只有一台 PC,没有 Mac!但经过一番努力,我成功地让一个包含数百页的网站在所有测试过的浏览器上都能完美运行。关键是让呈现既美观又相对简单,这样就不会出错了。
当然,它在每个浏览器上的外观都不一样:IE 和较新的浏览器会获得完整的布局;4.0 浏览器会获得颜色、字体和一些浮动,但没有其他格式;WebTV 会获得白色文字在灰色背景上;其他所有人都会获得未样式化的标记。得益于 PHP,兼容的浏览器会获得 XHTML 1.1(作为 application/xhtml+xml),而其他所有人都会获得 HTML 4.01 Strict(作为 text/html)。对于一个由非专业人士经营的家庭网站来说,这不算差!
关于我为他人做的项目——我通常使用 HTML 4.01 Transitional,易于使用的 CSS 布局,以及最适合的简单表格(随着我对 CSS 的了解越来越多,这种情况越来越少)。我说该做什么就做什么,但要遵守标准,因为标准化可以实现介质(互联网)的更通用实现。当用户代理(浏览器)提供更好的标准支持时,这将更容易实现。
非常有意思的讨论。
Charlie Petitt 在 2004 年 5 月 25 日星期二上午 8:09 GMT 这样说道。
评论42
我一直在关注这个 CSS/表格的事情,我觉得很有趣。这就像听一群 Mac 狂热者在说话。
社区里一些知名人士说 CSS 很好,然后一千只鹦鹉跟着叫,因为大多数人太蠢了,不会自己思考。
做了将近 10 年的 Web 开发,我使用表格布局页面,并使用 CSS 进行样式设置,并且只要我能看得清楚,我就会继续这样做。它更简单,更快,而且我可以用最少的麻烦让复杂的页面看起来*完全*符合我的要求。我仍然发现有很多事情我用 Photoshop 和表格可以做到,而用纯 CSS 却做不到。不同浏览器中表格 bug 的数量比 CSS bug 少得多。我花在深入研究 CSS 上的时间,就是我不能用来赚钱制作表格布局的时间。
我确实同意,纯粹的信息性网站、内部网等非常适合纯 CSS,但设计也很重要,而且公司希望在访问者身上留下持久的印象,并且有营销和品牌方面的考虑等等。
纯 CSS 网站平淡无奇,无聊透顶,你一眼就能看出来。为什么创意人士要这样束缚自己?
最后,宽带接入几乎无处不在,远早于浏览器能标准化 CSS,这使得“精简页面”的论点对用户来说完全没有意义,而且对于 99% 的网站来说,带宽账单都不是问题。
Joey 在 2004 年 5 月 25 日星期二上午 8:12 GMT 这样说道。
评论43
我喜欢 CSS,我也喜欢表格进行布局。
我只是讨厌人们认为“只有一种正确的方法”。我使用表格进行纯粹(主要)布局,并使用 CSS 进行美化。猜猜怎么着,我的网站看起来完全符合我的要求,没有问题。如果你想一路使用 CSS,不用表格,那就好吧。但不要认为使用表格的网页设计师是愚蠢的人。
跑题:我已经厌倦了所有的标准。它们无处不在,到处都是。当我制作一个 100% 符合所有相关标准的网站时,我将花费更多的时间在细枝末节的荒谬细节上,而不是实际制作网站!不,我不是懒惰,我只是意识到,我作为一名专业网页设计师的技能不会因为遵循其他人制定的标准而变得更好,而这些标准包含了我不同意的相当一部分内容,就像一个盲目愚蠢的人一样。归根结底,我为特定的平台(浏览器)和特定的版本设计 Web 应用程序。新版本标准经常发布,不再值得投入时间去完全研究它们。此外,无论你是什么浏览器粉丝,它们都有“错误”(其中一半是实际错误,另一半是不符合某个标准,即使浏览器创建者没有向你承诺符合该标准)。我为特定浏览器(版本)设计我的网站(实际上是内部网应用程序)。我拒绝屈服并 100% 遵守所有标准,为什么我要这样做?如果有一个网站标准和一个 CSS 标准,并且所有浏览器都 100% 正确地支持它们,那么也许它才值得(更多的)努力。
我是唯一一个厌倦了 Web 标准迫使我们每次有某个脑袋想出绝妙的主意来废弃一些东西并发明一些新东西来替代它时都要重新设计的人吗?
Mike 在 2004 年 5 月 25 日星期二下午 1:20 GMT 这样说道。
评论44
CSS vs 表格……伟大的辩论。
我认为这实际上归结为常识。
我最近在工作中遇到了这个问题。
我们最近的一个项目是重新设计一个预订引擎。我解释说,虽然我们要花钱花时间来改进软件项目,但我们应该使代码更符合标准。首先,我的老板不知道我在说什么,而且因为年轻,这总是被视为废话。其次,我必须说明,我无法控制 HTML 代码是如何构建的,或者它是按什么顺序组合的,我已经被赋予了一个固有的结构来处理。在项目开始前几天,我试验了一些设计稿,看看用纯 CSS 进行布局有多难。非常难,但我猜这是因为我的知识有差距。无论如何,我们最终做了一些更具过渡性的东西……而不是纯 CSS 布局。最终产品是出色的,我认为这是一个很好的折衷,有时金钱、时间和业务义务迫使你做出选择。所有关于纯 CSS 布局的这些废话都是胡说。是的,如果你是网站的唯一编码员和设计师,这会是一个选项……但我们知道情况并非总是如此。如今,网站有太多的利益相关者……你必须务实。假设你告诉你的利益相关者你正在做 CSS 布局……他们说好的,听起来不错……然后他们将负责更新网站。当他们打开它时,很可能在 Frontpage 中,他们不太可能手动编写新内容,他们可能会复制粘贴并使用 Frontpage 提供的所有荒谬的格式化功能,从而淹没我们精心编码的模板。重点是,如果你负担得起,并且有时间……花时间与浏览器搏斗,并进行纯 CSS 布局……并非所有项目都必须具有这种灵活性。我最近的一个项目是重新设计我公司的网站。我选择进行纯 CSS 布局,无需表格。但我最大的担忧是人们进去编辑代码,并认为他们不需要多余地到处使用表格来获得特定的布局……那将是一场灾难,所以也许最终我会选择一个头部 div,一个主 div 和一个简单的两列表格(如果它被禁用,它本身就不是不可访问的),以及一个页脚 div,因为我无法确定将要更新网站的人是否会知道他们在做什么。
Paul 在 2004 年 5 月 25 日星期二下午 4:19 GMT 这样说道。
评论45
(在我开始之前:抱歉扮演魔鬼代言人。而且,我*不是*支持表格的。事实上,我也是一个 Web 标准纯粹主义者。我一直告诉各种 Web 公司让他们的横幅广告代码兼容 xhtml-strict。)
我们都忘记了支持表格的一个论点。
那些 wysiwyg 设计师!关于电动螺丝刀的绝佳阐述。但这论点却适得其反。wysiwyg 工具可以比作电动螺丝刀,而手工编写的代码则比作旧的手动螺丝刀。
表格设计的可悲真相:它可以自动化。如果可以,它就会被自动化。Dreamweaver 就是这么做的,设计师也是这么做的,他们将继续这样做,除非被*迫*改变。
到目前为止,我还没见过一个带有“将所有这些滚动条连接到一个 div 中,并在 img 标签内使用纯样式属性”等按钮的 wysiwyg 编辑器。
或者如何“用 CSS 修改的 ul 来实现这个菜单,而不是用表格”。或者甚至更好……“用 CSS 和 JavaScript 构建分层菜单。”
甚至更好(这是我的最爱)……一个“生成 DOM 事件生成器,以摆脱那些弄乱我标记的该死的 onmouseover 事件”的工具。
我有一个这样的脚本(嘿嘿),但我该如何发布它并将其集成到 Macromedia Fireworks 或 Dreamweaver 中?
任何为 Macromedia 产品构建扩展的程序员?喂?有人吗?
(荒凉的风吹过……)
令人震惊的真相:使用 wysiwyg,你只有*两个*选择:“一个表格”和“嵌套表格”。当我尝试导出我的设计时,我震惊地发现“单表”方法看起来比嵌套的还要复杂得多!(而那只是针对头部。)
你如何告诉 Dreamweaver™ 和 Fireworks™ 将你的切片变成 div?给你一个单独的 CSS 文件?将其集成到你当前工作的 CSS 中?
你不能。问题*不是*(太多)一些浏览器没有实现最新的 CSS 技术。真正的*问题*是 WYSIWYG 软件还没有。
另一方面……我多么希望 CSS3 终于能工作!三列布局,万岁!图像边框,更是万岁!唉,它们还没有。对于一个良好的三列灵活布局和图形边框,我们将不得不始终求助于带有嵌套 3x3 表格的 3 列表格。(8 个单元格是图形边框,中间单元格用于内容)。甚至更糟*畏惧*一个 9x3 的表格,其中内容使用 rowpan=2。
但是当 CSS3 终于发布时,我将能够说
布局?太简单了!只需创建一个三列表格,然后用 CSS3 的图像边框样式化每个 td。
然后,闹钟会把我叫醒。
回到现实……
Rick 在 2004 年 5 月 25 日星期二下午 5:27 GMT 这样说道。
评论46
Rick,你说得很有道理。我的网站(www.ookingdom.com)非常大,而且完全用 CSS 布局,但我是一个人负责网站管理员。任何期望多人协作的人都应该求助于更“传统”的方法,尤其是在“不懂 CSS”的 WYSIWYG HTML 编辑器面前。
仅供参考,并非*所有*标准爱好者都回避表格布局。我自己做网站时会这样做,但这并不意味着每个人都必须如此。阅读以下摘录
http://www.ookingdom.com/newsarchive/2003/11#nov06king
Charlie Petitt 在 2004 年 5 月 25 日星期二晚上 8:26 GMT 这样说道。
评论47
忽略整个语义不正确的论点,表格是一种过时的技术:明确地将所有内容放置在正确的位置和大小。谈论不灵活和不可扩展。
CSS 遵循一种更现代的方法;也就是说,将所有内容从左到右、从上到下放置,并允许所有内容扩展和滑动,并且无论在什么环境中看起来都不错。这是所有事物的发展方向;据我所知,即使微软也正在 Longhorn 中放弃旧的 Windows API GUI 定位方法,转而支持 XAML。
Zooplah 在 2004 年 5 月 26 日星期三凌晨 1:35 GMT 这样说道。
评论48
我认为 Zeldman 在他最新的书中采取了最佳方法……那就是他称之为“过渡式”方法。
表格是标准的一部分……HTML 4、4.01、XHTML 1、1.1 和 2。
我认为问题在于,是的,CSS 的学习曲线确实非常陡峭……但你通过互联网上的阅读,似乎要么必须完全使用 CSS 布局,要么就此作罢(如果你选择这样做,就不应该称自己为真正的 Web 前端开发人员)这种想法是荒谬的。是的,CSS 的优势远远大于使用表格的优势……但过渡式网站比里面嵌套里面嵌套里面嵌套表格的网站要好得多……
我学习 CSS 的方法之一是将现有的“意大利面条式”网站重新编码成过渡式格式。用于个人练习。这可以稍微减轻学习曲线……因为你可以使用一个表格作为简单的网格,然后用 div 构建可重用的模块化组件,这些组件可以用于未来的设计。虽然许多标准纯粹主义者会为此做法感到不满,但他们应该赞赏它,因为正如我所说,它比嵌套表格要好……似乎纯粹主义者对此事采取了一种近乎清教徒的态度……
在 2004 年 5 月 26 日星期三凌晨 4:28 GMT 这样说道。
评论49
我在计算机行业已经工作了 30 年,在此期间我经营过成功的公司。在那段时间里,我看到了行业内的数千种变化,不仅是互联网,还包括大多数技术领域。然而,目前关于 CSS-P 和表格布局的激烈辩论让我感到非常困惑。
在我看来,如果你问大多数商务人士,他们是否关心他们的网站是纯 CSS-P 还是表格布局,他们可能会说“我不在乎”。他们关心的是满足要求,实现目标,以合理的价格提供稳定、合规、以客户为中心的 Web 体验。如果设计目标是我们是一个出版机构,并且必须支持印刷布局和 PDA,那么 CSS-P 可能是更好的选择,如果他们希望页脚始终位于所有内容底部,那么表格可能是更好的选择。
那么,为什么这么多人执着于让其他 Web 开发者感到羞耻,如果他们敢于使用表格呢?如果表格是最佳解决方案,那就使用它们,如果 CSS-P 是最佳解决方案,那就使用这种方法。也许行业专家们做得太好了,说服我们必须不惜一切代价放弃表格。大多数明智且知情的人都知道 CSS-P 的差异和优势。
环顾四周,许多纯 CSS 设计布局,很多都感觉相似,常常接近于漂亮,带有漂亮的渐变、微妙的图片等。对我来说,CSS 最棒的地方在于对字体、背景图像和绝对定位元素、打印样式表以及减少带宽的精确控制,所有这些都是极好的选择,而且没有争议,因为我们都知道它们的好处并使用它们。
那么,为什么会出现关于 CSS-P 用于布局的持续辩论呢?我说是因为目前的 CSS-P 离完美还差得很远,例如,为什么我不能说一个 Div 的宽度为 70%,高度为 70%,并且知道它在所有流行浏览器中都能像表格一样工作?
当 CSS3 发布、得到妥善支持并解决许多现有缺点时,我预计关于使用纯 CSS 的辩论将消失,因为开发者将看到一种在几乎所有情况下都优于表格的解决方案。但这只是一个过渡时期,直到不再如此,使用过渡方法并没有错。当然,我们都希望将内容与呈现分离并保持网站高效,但任何认为仍然使用表格的开发者是愚蠢的人,都是非常错误的。Charlie、Joey 和 Mike(帖子 41、42 和 43)都说对了,并接受有很多时候表格是最佳解决方案。如果 Jeffrey Zeldman 能够接受这一点,我相信行业中的其他人也应该这样做。
也许我们都应该创建一个通用网站,其唯一目的是向我们每个人传递和教育我们在 Web 设计中不时会遇到的实际问题,例如解释为什么将 Div 放在简单的整体表格布局中是不可行的(据我所知),以及其他此类事项,而无需说“如果你使用表格,你就是一个坏坏的男孩,一个网站不是 100% 专注于‘必须以任何成本使用最新技术,而是如何最好地满足客户的需求,使用过渡方法、标准和新技术,其中最合适’”。如果我们因为过于沉迷于最新的布局技术问题而忽视了网站的真正商业目标,那么我们肯定会忽视 Web 应该代表的一切。
永远前进,不断引入和使用新技术和标准,但请 gentleman 们以现实的速度!
David Egerton 在 2004 年 5 月 26 日星期三上午 11:17 GMT 这样说道。
评论51
我曾经是 About.com 和 Deutsche Bank 等公司的专业游戏玩家,现在三年后我正试图重新进入这个行业。我对布局的基本理解主要是通过表格。这确实是一个学习过程,但我已经非常精通嵌套表格。所以现在我正在学习 CSS,感觉就像在没有桨的情况下游泳,曾经是奥运游泳健将的你,现在却变成了一个肥胖的关节炎患者,重新开始。
我看到的一些 CSS 的东西真的很酷,它显然是未来。但我觉得你的思维方式也必须改变。在我看来,这种方法似乎更偏向于使用 Quark 和 Photoshop 的传统印刷设计师。
我认为我们中许多擅长界面问题但不太擅长插画的人,都会觉得他们失去了一个曾经拥有的利基市场,或者至少我们不得不进行调整,以至于我们不知道使用 CSS 的熟练程度会有多高……我认为这就是一些犹豫的原因。我知道我的犹豫就在于此。
祝贺所有完成转型的人。我赶上的时候也会在那里见到你们!
Erik 于 2004 年 5 月 28 日星期五下午 12:56 GMT 说。
评论53
那么……我猜我是在布局方面觉得表格比 CSS *更难* 使用的唯一一个人吗?
我很难跟踪表格单元格用于表格数据的嵌套和关系,更不用说布局了。我目前的网站设计是一个简单的普通布局,带有一个简单的普通表格,因为那是我唯一能弄明白的。
但最近我一直在重做我的网站,学习使用 CSS 进行所有布局,我发现它确实容易得多。HTML 代码更容易跟踪,而且我发现通过在任何地方“附加”元素就可以轻松地制作出整洁的布局。改变一行,把那个部分放在那里。改变另一行,在那部分加些间距。这让我希望我早点发现了“纯”CSS 布局!
现在,我不会说我是设计师,因为我不是……即使是我现在制作的新布局仍然很简单。而且 CSS 的浏览器兼容性问题很烦人。但 IMHO,我不得不同意“表格之所以更容易,只是因为你先学会了它们”的说法。我当然不觉得表格布局比 CSS 布局更容易。我是说,你们怎么能管理好所有那些表格单元格呢?
Liz Calkins 于 2004 年 5 月 28 日星期五下午 5:44 GMT 说。
评论56
我不知道用 CSS 构建网站是更容易还是更难,但它在质量上是不同的。
DreamWeaver——网页版的 PageMaker——将页面视为一堆方框。它以 <font> 标签思考,转换为编号的 <div>,然后将所有内容放入 <head>。
即使是新手 CSS 设计师也会形成一个心理模型,为跨越网站部分的网页划分分配语义。CSS 设计不容易实现所见即所得编辑,因为它将样式与内容分开,并且由于继承和级联的工作方式。
CSS 设计师的任务不仅仅是图形布局。所见即所得可能不错,但设计师需要一个强大的文本编辑器。也许她还需要更强大的东西,能够整合页面和网站部分的更高层抽象以及 CSS 级联,并考虑跨整个网站的旧浏览器的优雅降级。
Michael Z. 于 2004 年 5 月 30 日星期日凌晨 4:19 GMT 说。
评论58
Liz Calkins
不,你不是唯一一个。我认为网页设计中最大的分歧在于那些真正了解底层工作原理并以文本方式构建网站的人,以及那些使用“所见即所得”工具的人。
使用图形工具的人认为表格更容易,因为他们从未见过其复杂性,并且他们的工具不支持 CSS 布局。
对于我们这些使用手写页面和具有自动模板和数据库支持的内容管理系统的人来说,CSS 布局在各个方面都更好——下载速度更快,编写更容易,理解更容易,维护更容易,跨更多平台兼容,等等。
我不为 Netscape 4 设计,但 CSS 的美妙之处在于我不必这样做。我为网络标准设计,网站仍然可以在 Netscape 4 上运行。当然,在这个浏览器上它很难看,但谁在乎呢?
记住听众:运行 Netscape 4 的人不在乎我的网站是否难看,因为如果他们*关心*网页看起来有多漂亮,*他们就不会运行 Netscape 4*。如果读者不在乎难看,那我为什么要关心?
当然,也许企业客户关心他们的“信息”在十年前过时的浏览器上没有完整的图形和布局保真度。如果是这样,那就让他们使用 PDF,因为你在网络上永远无法获得全面的保真度。如果你不这么认为,那请告诉我当你用我的 t68i 手机访问你的时候,你打算如何优化你的表格布局。
mathew 于 2004 年 5 月 30 日星期日晚上 8:13 GMT 说。
评论59
我喜欢使用字体标签来布局我的页面,这些标签通过内联 CSS 进行更改,以表现得像表格单元格。这只在安装了 SP1 的 IE6 中有效,但我发现这是值得的牺牲。
Michael Ward 于 2004 年 6 月 2 日星期三上午 11:29 GMT 说。
评论60
已被弃用,不应再使用……抱歉。 ;-)
所有“挣扎”于 CSS 的人……你们读过那篇博文了吗?每个人都在挣扎于 CSS。曾经,很久很久以前,你也在挣扎。如果有什么对你来说是新的,你就会挣扎。别抱怨了,克服它,写出好的、基于 CSS 的代码。
TheG 于 2004 年 6 月 4 日星期五下午 9:45 GMT 说。
评论62
表格对我来说很难学习(当然,那是我 15 岁的时候,现在我 17 岁了),所以我直到学会 CSS 才真正做出漂亮的布局。对我来说,它更有意义。
yamipoli 于 2004 年 6 月 6 日星期日凌晨 3:31 GMT 说。
评论63
表格布局可以轻松处理的一个问题是,到目前为止还没有人给我提供 CSS-P 解决方案
当网站访问者放大字体时,浏览器会将文本重新排列以适应表格。使用 CSS-P,一个 div 中的文本常常会覆盖相邻 div 中的文本,导致文本无法阅读。有没有办法让 div 自动调整大小以容纳更大的字体?(无论是 16px 还是 200% 或 300%?)
顺便说一句,Dreamweaver 确实有“修改”->“转换”->“表格到图层/图层到表格”。我没用过,所以无法说它效果如何。
Charles 于 2004 年 6 月 14 日星期一晚上 8:17 GMT 说。
评论64
(续)为了说清楚,不仅 div 需要容纳放大的字体,而且它需要这样做,而无需为段落的每一行进行水平滚动。为了到达文本列进行一次水平滚动是可以的,但一个段落必须在浏览器的水平边界内。
(在尝试了 Son of Suckerfish 的 300% 大小时,我添加了这个注释)
Charles 于 2004 年 6 月 14 日星期一晚上 11:22 GMT 说。
评论65
(结束,我希望)
糟糕!我看到我们的许多表格页面也不支持 300%。这可能是包含数据表的页面问题。如果 CSS-P 可以强制非表格中的段落按窗口边缘换行,那么你可能就卖出去了。
Charles 于 2004 年 6 月 14 日星期一晚上 11:28 GMT 说。
评论66
我正在 Macintosh OS9 上运行的 IE5.1.7 中阅读此页面。我有一个 21 英寸的显示器,所以浏览器窗口有足够的空间。“搜索”按钮在屏幕顶部,覆盖了你 logo 的一部分,所以据我所知,这个网站叫做“ldog.com”。这并没有让我对网站所有者关于最佳 Web 编码方法的看法有多少信心。
Tired of Purists 于 2004 年 6 月 20 日星期日凌晨 6:14 GMT 说。
评论67
Charles:别那么控制。如果文本溢出了 div,那很可能是你自己的指示造成的。
设置宽度时不要使用绝对值。百分比是最好的。让文本随意换行。
Neal 于 2004 年 6 月 23 日星期三上午 7:08 GMT 说。
评论68
CSS 设计是网络正在经历的最重要的变化之一,因为它能够实现无干扰内容
可以传输到许多界面出口,例如手机和其他媒体。
无干扰内容对于搜索引擎至关重要,并能缩短加载时间。
Jenny Price 于 2004 年 7 月 16 日星期五晚上 8:22 GMT 说。
评论69
关于 CSS 的最佳网站可能是 http://www.csszengarden.com,它恰好说明了 CSS 设计的强大功能
以及如何在不使用任何表格或 HTML 代码的情况下,用众多设计来布局相同的干净内容!
Richard Diaz 于 2004 年 7 月 16 日星期五晚上 9:22 GMT 说。
评论70
Mac OS 10.3.4 和 IE 5.2.3
搜索框在狗的 logo 和名字上方靠左的位置。
我在 IE 5.2.3 中看到许多 CSS 网站有奇怪的溢出文本,包括许多精美的 Zen Garden 页面。
www.htmldog.com 在 Safari 1.2.2 中看起来还可以。但我不喜欢用 Safari,因为我喜欢保存你的许多页面以供将来参考,而 Safari 不保存网页存档,而且当我将鼠标悬停在链接上时,Safari 也不会显示链接 URL。
我一直使用表格进行布局(一个简单的外部表格,没有嵌套表格,所有样式都使用 CSS)。我正在开始一个新网站,并考虑尝试一个纯 CSS 网站,但在阅读了所有讨论之后,我不确定这是否值得麻烦。我倾向于四年前得出的结论:浏览器已经准备好了。
Linda 于 2004 年 7 月 16 日星期五晚上 9:40 GMT 说。
评论72
所有“挣扎”于 CSS 的人……你们读过那篇博文了吗?每个人都在挣扎于 CSS。曾经,很久很久以前,你也在挣扎。如果有什么对你来说是新的,你就会挣扎。别抱怨了,克服它,写出好的、基于 CSS 的代码。
Alex 于 2004 年 7 月 22 日星期四上午 9:07 GMT 说。
评论75
抱歉,我不是故意抱怨的。我放弃了表格,并使用标准 CSS 创建了新网站。到目前为止只有 7 页,但 3 列的动态设计已经有了,并且似乎有效,甚至通过了验证。我还没有在很多浏览器中测试过。我认为这是困难的部分。
很大程度上要感谢 HTML Dog——我通过拆解这个网站学到了很多东西,感谢你们所有人富有启发性的评论。另外,通过看到这里的 PHP,我学到了足够多的东西来实现每日名言的自动化。
“愿意做的事情,没有什么是麻烦的。” ~ 托马斯·杰斐逊
Linda 于 2004 年 7 月 31 日星期六晚上 7:18 GMT 说。
评论76
说实话,兄弟!我不可能说得更好。我的意思是,为什么要做一半的事情,用 CSS 来做大部分事情,然后如果你做不到就退而求其次用表格——简直是字面意思。谈论一个完全有效的反驳——说得好。
Alex 于 2004 年 8 月 8 日星期日下午 4:47 GMT 说。
评论77
我得把这件事说出来
我他妈的讨厌表格——每次我不得不使用它们时,我都觉得我在进行一次巨大的飞跃,这真的很令人沮丧。我真的不知道如何使用表格进行布局,因为我相对较新于网页开发,我只知道 CSS——现在我必须创建该死的 HTML 邮件列表,而我不知道我在做什么。这烦人的地方在于——我别无选择,我*必须*使用表格——除非有人知道有什么电子邮件客户端可靠地支持 CSS 布局?
我还能说更多,但那些 td 可不会自己写出来,你知道的……
Clare 于 2004 年 8 月 11 日星期三下午 1:17 GMT 说。
评论78
我喜欢 CSS,如果可以的话,我会独家使用它。但我在 http://blogcritics.org/ 上开始了纯 CSS 设计,然后放弃了。那个网站有五个并排的列,而在 CSS 中没有好的方法来做五列。如果你绝对定位它们,你就会遇到麻烦。如果你浮动它们,你就会遇到麻烦。(尝试一个小于 900 像素的浏览器窗口!)基本上,有五列,你就会遇到麻烦。所以现在我又回到了表格,并讨厌它。
当 CSS 能做到表格所能做的一切时,我再也不会为非表格数据使用表格了。但我怀疑那些认为 CSS 能做一切的人从未建造过五列页面。
附注:有很大的压力也要转向六列。
Phillip Winn 于 2004 年 8 月 18 日星期三晚上 7:46 GMT 说。
评论80
我讨厌表格,而且我知道 CSS 是一个出色的开发网站工具。
我使用表格来确定我页面的视觉布局,
我知道这很糟糕,但问题是我没有时间学习 CSS :)
Internet is not Cheapnet 于 2004 年 10 月 21 日星期四下午 4:13 GMT 说。
评论81
CSS 是一个很棒的工具,但它不能替代表格。不幸的是,HTML 没有更多可用或可用的布局标记,只有表格。CSS 对于字体格式化非常有用,但对于页面布局却不是。
Alex 于 2004 年 10 月 28 日星期四晚上 10:56 GMT 说。
评论83
表格有什么优势?嗯,它们让浏览器能够轻松地弄清楚什么放在哪里;它们非常适合基于网格的布局;只要你不嵌套,它们就很简单。
表格有什么问题?只有一个:你必须按照表格单元格的顺序提供内容。
现在,如果 CSS 有像 CSS 网格(又名表格)这样的东西,我们就不会有这场宗教战争了。
William McIlhagga 于 2004 年 10 月 29 日星期五下午 12:09 GMT 说。
评论84
我正要构建一些规模相当大的网站,并且一直在考虑 CSS/表格的困境,所以我很高兴找到这个页面。CSS 看起来是一个很棒的理想,但还没有完全实现。将样式与内容分离、轻量级页面、(声称的)易于维护都非常有吸引力,但我怀疑让非平凡布局在各种浏览器上正常工作的头痛问题可能不值得花时间去做。时间就是金钱,表格是已知因素。这个网站和我看到的许多其他 CSS 网站无疑非常优雅,并且是未来,所以我将继续学习 CSS。
Giles 于 2004 年 11 月 1 日星期一凌晨 3:46 GMT 说。
评论85
CSS 主要用于给网站上的文本添加效果。表格是不同的东西,它们用于排列文本,而不是格式化它。我认为 CSS 不能取代表格,也不能取代 CSS。表格只是为页面提供布局的另一种形式。CSS 和表格携手合作,形成一个时尚的网页。
warner 于 2004 年 11 月 2 日星期二上午 6:01 GMT 说。
评论86
好的,你节省了磁盘和带宽,你可以创建漂亮的布局,但 IMO 它的复杂性更高。我只是在不想创建任何花哨的东西时使用表格,这样可以节省我一些时间。
Mr. Anti Dialer 于 2004 年 11 月 17 日星期三下午 3:31 GMT 说。
评论87
给我看看如何使两个 div 并排放置,其中一个具有可变内容的高度相同。我相当确定这是不可能的。它们不像表格那样更新。我跟很多人谈过我的问题,他们都给了同样的回答:用表格来处理那部分。
Jesse Donat 于 2005 年 3 月 10 日星期四凌晨 12:29 GMT 说。
评论88
我过去使用过表格,但想使用图层为我的网站添加一些新外观。我受到文章的启发,尽管我过去曾使用 CSS 来增强我的表格,但我目前正在尝试只使用表格(如果它们能增强我的页面)。少点一成不变。
Will 于 2005 年 4 月 5 日星期二凌晨 2:53 GMT 说。
评论89
你们所有人都可以随心所欲地说,但如果你的网站设计让它受欢迎,那么就有什么地方出了问题。看看 http://maddox.xmission.com/!它有最糟糕的设计,但看看最下面。超过 1 亿次页面浏览量。当我访问时,他在 last minute 有 212 次页面浏览量。这比大多数网站一天获得的还要多……
是的,我意识到他使用了表格和其他一些不规范的标签,但重点是内容>设计。话虽如此,你没有借口使用表格,除了它们本来的用途。表格确实有效,但我想让你在 10 分钟内更改一个 100+ 页面的布局。没错,不可能。有了 CSS,这完全可能!
Zack S. 于 2005 年 4 月 13 日星期三晚上 11:58 GMT 说。
评论90
我正在学习如何使用 HTML 和 CSS(谢谢你!)。我花了 15 分钟就学会了 CSS,并达到了我想要的效果,而我还没有完全弄清楚表格是如何工作的。我无法想象用表格来布局我的网站。仅仅用表格来布局数据就足够让人头疼了!
akeed1979 于 2005 年 5 月 27 日星期五晚上 9:12 GMT 说。
评论91
“纯 CSS 网站很普通、很无聊,而且很容易认出来。有创造力的人为什么要把自己束缚起来?”
这个说法完全是错误的。我们在公司培训开发人员使用 CSS,其中许多人曾做出同样的声明,直到我们纠正了他们。我们已经将各种基于表格的公司网页用 CSS 重写了。在我们的可访问性演示中,我们将表格版本和 CSS 版本的页面并排进行比较,没有人能分辨出它们之间的区别,除非他们查看代码。真正让他们转向 CSS 的是当我们向他们展示如何通过切换样式表来完全改变设计时。
我从 1999 年开始做网页设计(互联网和内网,基于表格和 CSS),我绝对相信 CSS 用于布局比表格更优越。至于学习 CSS,它并不难。根据我的经验,CSS 用于布局比表格更容易学习。我领导一个志愿者开发人员团队,他们培训来自非营利组织的人员创建/维护自己的网站。这些人中的许多人都是计算机新手,他们学习 CSS 没有问题。
Roman 于 2005 年 6 月 8 日星期三凌晨 12:25 GMT 说。
评论92
我认为将 CSS 或表格视为全有或全无的选择的态度非常令人不安。我做很多数据库相关的网站,在那些情况下,表格比使用 CSS 来格式化内容呈现要优越得多。数据库驱动的内容需要大量的格式灵活性来响应正在呈现的内容的不同数量和类型。
CSS 非常适合样式字体和行距以及标签,但到目前为止,我还没有看到它值得花时间去处理那些不标准的浏览器实现,这些实现使得格式化一个液体化且在用户更改字体大小时不会中断的网站变得极其困难。
我经历了几次网站改版,我不能说那些使用 CSS 进行定位的网站比使用基于表格格式的网站更容易。
这不是选择哪个更好的问题,而是如何整合 CSS 和表格以创造最佳组合,从而实现易于使用和易于维护的网站格式。
Christie Mason 于 2005 年 6 月 15 日星期三下午 2:48 GMT 说。
评论93
有用的辩论——谢谢(不过不需要那么多脏话!)
去年从爱好设计师转为兼职专业人士以来,我几乎完全是通过猜测来完成整个网页设计过程的!在我爱好期间,我从未读过关于页面布局技术的一字一句,但我发现自己直观地尝试使用表格来完成工作。我认为(IMHO)我终于掌握了这项艺术(?!),但在过去一年里读了更多“专家”的观点后,我确信作为一名“专业人士”我真的应该使用 CSS。我使用 CSS 进行一般格式设置,并且完全确信其优势,但当我接近 CSS 布局的主题时,我担心浏览器不一致性。这次讨论非常有帮助,虽然我将开始尝试 CSS 布局(我认为它将是最好的——在未来),但我乐于让更多时间过去,以便浏览器和“CSS 标准”能够统一。嗯……直到我读到更有说服力的 CSS 论点为止!
Rick 于 2005 年 7 月 7 日星期四下午 2:03 GMT 说。
评论94
前面的两个评论合在一起是“恰如其分”。在所有情况下,使用 div 来替换表格并没有带来净增值,因为浏览器不一致,而且在非平凡的设计方法中,使用 div 代替表格的惯用法,从视觉设计角度来看,并非那么直接。根据我的经验,方法越直接,维护就越容易,即使最终产生的标签输出量稍大,但对大多数网站访问者的性能影响微乎其微。
Steve Magruder 于 2005 年 7 月 21 日星期四凌晨 2:20 GMT 说。
评论95
你知道……有人会认为你们这些人从来没听说过模板化表格布局,将不变的部分分离成单独的文件,并在需要时将它们 SSI 到页面中。这工作速度很快,极大地减小了网站尺寸,而且仍然允许使用表格。CSS 有其位置,表格也有。停止如此狂热,学会变得务实一些。
于 2005 年 8 月 19 日星期五下午 5:35 GMT 说。
评论96
读到一年后发表的许多评论真是有趣。
当时真的有这么多人*没明白*吗?太可怕了。我想知道现在还有多少人不明白。再过几年,如果你仍然像 1999 年那样设计,你会发现很难在这个行业找到工作。
Luke Redpath 于 2005 年 12 月 7 日星期三下午 5:40 GMT 说。
评论97
廉价芬特明 芬特明。购买芬特明,折扣芬特明,芬特明在线,芬特明货到付款。
订购希爱力 希爱力。在线希爱力,便宜希爱力,折扣希爱力,免费希爱力。
在线购买阿普唑仑 阿普唑仑。无需处方购买阿普唑仑,购买阿普唑仑,阿普唑仑 XR,在线阿普唑仑。
在线安必恩 安必恩。订购安必恩,便宜安必恩,安必恩戒断,在线订购安必恩。
在线非洛氯平 非洛氯平。在线非洛氯平成分,在线订购非洛氯平,便宜在线非洛氯平,1 盒在线非洛氯平。
购买索马 索马。在线购买索马,便宜索马,索马药物,在线索马。
仿制药伐地那非 伐地那非。在线购买伐地那非,购买伐地那非,便宜伐地那非,伐地那非替代品。
francis giraldo 于 2005 年 12 月 23 日星期五凌晨 2:52 GMT 说。
评论98
我只有一件事要补充到这个辩论中:引用我常去的论坛上某人的话。
>我在你的网站上看不到表格,但你在使用<table>。这就像买一个马桶来煮你的防风草,什么鬼……
Tom 于 2006 年 1 月 4 日星期三晚上 6:57 GMT 说。
评论99
>CSS 大师,我该如何用 CSS 来做下面的表格?
><table><td><td>Col1</td><td>Col2</td></tr>
><tr><td>Data1</td><td>Data2</td></tr></table>
pb 于 2004 年 5 月 22 日星期六晚上 11:48 GMT 说。
你应该这样做
<table>
<thead>
<tr>
<th>Col1</th>
<th>Col2</th>
</tr>
</thead>
<tbody>
<tr>
<td>Data1</td>
<td>Data2</td>
</tr>
</tbody>
</table>
你不应该反对使用表格。那是错误的,因为表格确实有语义意义。当你实际显示数据时,不使用表格就是可访问性问题。这一点大多数人都没意识到。我建议你阅读 Roger 关于此的文章。
http://www.456bereastreet.com/archive/200410/bring_on_the_tables/
Tom 于 2006 年 1 月 6 日星期五晚上 7:18 GMT 说。
评论100
@comment 87
http://infinity-stuff.com/other-stuff/nickpresta-ath-cx/source/equalcols.html
Tom (再次) 于 2006 年 1 月 8 日星期日凌晨 2:24 GMT 说。

评论1
说得好。
我担心 Andy 的帖子会鼓励一些开发者走老路,而不去学习。
可悲的事实是,那些能够正确使用表格的人(只有一个精炼的表格,严格用于布局)
能够做到无需表格也能设计并成功完成。其他人只会坚持上个世纪的习惯,受到大腕们说“表格是可以的”的鼓舞,却忽略了语境中的“有时”和“正确使用”。
Rimantas 在 2004 年 5 月 14 日星期五上午 11:56 GMT 这样说道。