似乎每次尝试创建纯CSS布局都比使用一两个表花费更长的时间。 使三列长度相等,数据量不同似乎需要特别的技巧,特别是在处理跨浏览器问题时。

我的问题:

这几张桌子会伤害谁?

表格似乎在表格数据上的工作特别好-为什么在当今这个时代如此惹人注目? Google.com的源代码中有一个表格,其他许多网站也是如此(stackoverflow.com并非如此)。

===============>>#1 票数:27

由于这是堆栈溢出 ,我将为您提供程序员的答案

语义101

首先看一下这段代码,然后思考这里出了什么问题...

 class car { int wheels = 4; string engine; } car mybike = new car(); mybike.wheels = 2; mybike.engine = null; 

当然,问题在于自行车不是汽车。 对于自行车实例,汽车类是不合适的类。 该代码没有错误,但是在语义上是错误的。 它对程序员的反映很差。

语义102

现在将此应用于文档标记。 如果您的文档需要显示表格数据,则适当的标签将是<table> 但是,如果将导航放置到表中,那么您会滥用<table>元素的预期用途。 在第二种情况下,您不呈现表格数据,而是(错误地)使用<table>元素来实现呈现目标。

结论

这对谁有害? 没有人。 如果您使用语义标记,谁会受益? 您-和您的专业声誉。 现在去做正确的事。

===============>>#2 票数:17

像很多东西一样,这是一个好主意,经常会被带走太多。 我喜欢div + css驱动的布局,因为更改外观通常非常容易,甚至只需通过样式表即可彻底更改外观。 与低级浏览器,屏幕阅读器等保持友好也很好。但是,像大多数编程方面的决定一样,在做出决定时应考虑网站的目的和开发成本。 任何一方都不是100%的正确方法。

顺便说一句,我想每个人都同意表应该用于表格数据。

===============>>#3 票数:9

在现实世界中,采用一种设计并完全重新设计外观而不触碰标记的机会就很少了。 对于像csszengarden这样的博客和混合演示来说,这是很好的选择,但实际上,在设计中等复杂的任何网站上,这都是虚假的好处。 使用CMS更为重要。

DIV加上CSS!=语义。 好的HTML对于SEO和可访问性总是很值得的,无论是使用表还是CSS进行布局。 通过将非常简单的表与一些良好的CSS结合起来,您将获得真正高效,快速的Web设计。

表格布局比CSS布局更易于访问,反之亦然-它完全取决于内容的源顺序,仅仅是因为您避免使用表格并不意味着拥有屏幕阅读器的用户会自动在您的网站上度过美好时光。 布局表与屏幕阅读器的访问无关,只要线性化内容就有意义,就如同您进行CSS布局一样。 数据表是不同的; 它们确实很难正确标记,即使如此,屏幕阅读器软件的用户通常也不知道他们需要使用哪些命令来理解数据。

您不必担心使用一些布局表,而应担心正确使用了标题标签和替代文本,并且没有正确分配表单标签。 然后,您将对现实世界中的可访问性有一个很好的了解。

这是基于几年来进行用户对Web可访问性的测试(专门从事可访问的站点设计)的经验,以及从为在线银行Cahoot咨询此主题一年中获得的。

因此,我对发布者的回答是“否”,没有商业理由更喜欢CSS而不是表格。 它更优雅,更令人满意,更正确,但是作为您构建它的人和必须维护它的人,您是世界上仅有的两个会问它是CSS还是表格的老鼠的人。

===============>>#4 票数:8

使用语义HTML设计是其中的一件事,除非您进行实践,否则您将不知道自己缺少什么。 我曾在多个站点上工作过,但事实证明该站点的样式几乎没有影响服务器端代码。

重新设置网站的样式是一个非常普遍的要求,现在我已经注意到更多了,因为我可以对“说”表示赞成,而不是试图摆脱困境。

而且,一旦您学会了使用页面布局系统,它通常不会比基于表的布局更难。

===============>>#5 票数:7

我们将网页更改为基于DIV / CSS的布局的主要原因是延迟渲染基于表格的页面。

我们有一个公共网站,其大部分用户群位于印度等国家,那里的互联网带宽仍然是个问题(它的日趋完善,但仍不尽人意)。 在这种情况下,当我们使用基于表格的布局时,用户不得不凝视空白页相当长的时间。 然后整个页面将显示为一个整体。 通过将页面转换为DIV,我们设法在用户进入我们的网站时几乎立即将一些内容带到浏览器,而这些内容足以吸引用户,直到浏览器下载页面的全部内容。

基于表的实现的主要缺陷在于,浏览器仅在下载该表的整个html之后才会显示该表的内容。 当我们有一个主表来包装页面的全部内容时,以及当我们有很多嵌套表时,这个问题就会爆发。 对于“灵活表格”(没有固定宽度的表格),在下载整个表格标签后,浏览器必须解析到表格的最后一行以找出每一列的宽度,然后必须再次解析以显示内容。 直到所有这些事情都发生了,用户必须凝视着空白屏幕,然后所有内容都会在屏幕上显示出来。

===============>>#6 票数:7

我认为CSS布局的表格越少越干净,但我同意有时您只需要使用表格。

从业务角度来说,通常是“将以最快,最可靠的方式完成它的方法”。 以我的经验,使用几个表通常属于该类别。

我发现减轻CSS浏览器中跨浏览器差异的一种非常有效的方法是使用页面顶部的“ strict”文档类型:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

另外,对于可怕的IE6 CSS问题,您可以使用此技巧:

.someClass {
    background-color:black; /*this is for most browsers*/
    _background-color:white; /*this is for IE6 only - all others will ignore it*/
}

===============>>#7 票数:7

如果您拥有面向公众的网站,那么真正的商业案例就是SEO。

无障碍环境是重要的,保持语义(X)HTML 保持表格布局,但谷歌是排名第一的宝座将养家糊口容易得多。

例如: 每月网络报告:7月的页面浏览量为1.27亿

每月网络报告:7月页面浏览量为1.27亿

...

Latimes.com在SEO(搜索引擎优化)方面一直在不断进步,这意味着我们的故事在Google和其他搜索引擎中的排名更高。 我们在Digg.com等网站上的表现也更好。 所有这些加起来,比以往有了更多的曝光率和更多的读者群。

如果您查看他们的网站,他们的CSS布局相当不错。

通常,如今您发现相对较少的表布局在SERP中表现良好。

===============>>#8 票数:6

保持布局和内容分开,使您可以轻松地重新设计网站或对其进行调整和更改。 可能需要更长的时间,但是软件开发的最长阶段是维护 在维护过程中,最好是一个CSS友好的站点,在内容和设计之间应有明确的区分。

===============>>#9 票数:6

以我的经验,只有在需要100%支持可访问性时,这才真正增加业务价值。 如果您有视障用户和/或使用屏幕阅读器来查看您的网站,则需要确保您的网站符合无障碍标准。

使用屏幕阅读器的用户将倾向于拥有自己的高对比度大字体样式表(如果您的网站本身不提供样式表),这使屏幕阅读器可以轻松解析页面。

当屏幕阅读器阅读页面并看到表格时,它将告诉用户这是一张表格。 因此,如果您使用表格进行布局,那么它将变得非常混乱,因为用户不知道表格的内容实际上是商品,而不是其他表格数据。 菜单应该是div的列表或集合,而不是包含菜单项的表,这同样令人困惑。 您应该确保使用blockquotes,alt-tag标题属性等使其更具可读性。

如果您使设计由CSS驱动,那么您的整个外观都可以被剥离,并替换为原始视图,这些用户非常容易理解。 如果您具有内联样式,基于表格的布局等,那么这些用户将很难解析您的内容。

虽然我确实认为,仅在使用CSS进行站点布局时, 某些事情的维护变得容易了,但我认为并非所有维护都是如此-尤其是在处理跨浏览器CSS时,显然是一场噩梦。

简而言之,如果您希望所述用户可以访问该页面,则应以符合标准的方式描述其组成。 如果您不需要/不需要并且将来可能不需要,那就不要浪费太多时间尝试成为CSS纯粹主义者:)使用适合您并能胜任工作的样式和布局技术的混合体更轻松。

干杯!

[编辑-在此答案的错误或误导部分中添加了删除线-参见评论]

===============>>#10 票数:6

我刚刚记得的另一件事,您可以为页面分配不同的样式表以进行打印还是显示。

除了常规的样式表定义,您还可以添加以下标记

<link rel="stylesheet" type="text/css" media="print" href="PrintStyle.css" />

当您将文档发送到打印机时,它将根据该样式呈现文档。 这使您可以去除背景图像,其他页眉/页脚信息,而仅打印原始信息,而无需创建单独的模块。

===============>>#11 票数:6

仅通过更新1个文件来完全修改15页的网站就是天堂。

这是真的。 不幸的是,让15,000个复杂且差异很大的页面使用一个CSS文件是您梦worst以求的事情。 更改某些内容-它打破了一千页吗? 谁知道?

在我们这样的大型网站上,CSS是一把双刃剑。

===============>>#12 票数:4

这个想法是设计者可以设计,而Web开发者可以实现。 在动态Web应用程序中尤其如此,您不希望设计人员在源代码中乱七八糟。

现在,虽然有模板引擎,但设计师似乎只是喜欢发疯,而CSS允许比表格带来更多的特技。

话虽这么说:作为一名开发人员,我之所以放弃CSS Layout,主要是因为我的设计反而很烂,所以至少它可以正常吸吮:-)但是,如果我雇用一名设计师,我将让他使用他所见即所得的编辑器吐出的任何东西。

===============>>#13 票数:1

除了易于更新和合规...

我曾经设计过所有基于表格的网站,起初我很抵制,但后来我逐渐转向CSS。 它不是一夜之间发生的,但是它发生了,您也应该这样做。

有些夜晚,我想把电脑扔到窗外,因为我应用于div的样式不能满足我的要求,但是您可以从这些障碍中学到东西。

对于企业而言,一旦您开始使用CSS来科学地设计网站,就可以为每个网站开发流程,甚至可以使用过去的网站,而只需添加不同的标题图形,颜色等。

另外,请确保嵌入/包括您网站的所有可重用部分:页眉,子页眉,页脚。

一旦克服了驼峰,它就会从那里下山。 祝好运!

===============>>#14 票数:1

CSS布局的商业原因:您可以说“我们的门户网站完全可以自定义/可滑动而无需编写代码!”,从而使客户震惊。

再说一遍,在用表设计块元素时我看不出任何邪恶。 所谓的块状元素,是指在不同的设计中将所述元素分开没有任何意义。

因此,表格数据当然最好与表格一起显示。 在自己的表中设计主要的构建基块(例如菜单栏,新闻自动收录器等)也应该可以。 methink,只是不依赖表格来进行整体页面布局,您会很好的。

===============>>#15 票数:1

*我会让他使用所见即所得编辑器发出的任何内容
我吐了一点...
*啊你好? 您认为图形设计师不是在手工编写CSS吗?

有趣的是,我曾与一些设计师合作过,其中最好的设计师手动调整CSS。 我想到的那个人实际上将所有设计工作都作为带有几个CSS文件的XHTML文件进行,并根据需要动态创建图形元素。 他使用Dreamweaver,但实际上只是将其用作导航工具。 (我从那个家伙中学到了很多东西)

一旦您投资学习了纯粹基于CSS的设计,并且有了一点经验(发现IE糟透了(公平地说,它变得越来越好)),它就会变得更快。 我从事Content Management Systems的工作,而应用程序几乎不需要更改,设计师可以设计出完全不同的外观。

===============>>#16 票数:0

我实际上可以在用户页面上看到堆栈溢出中的表。

它甚至有很多内联样式...

===============>>#17 票数:0

肯定有。 如果您仍在为之奋斗,那您就做对了。

在可维护性和生产率方面,DIV + CSS布局实际上比表格布局容易得多。 只是继续练习,还为时过早。

表布局也很不错,它不只是用于布局,而且在进行微调时也有其他缺点。

===============>>#18 票数:0

::在Palmsey和Jon Galloway点头::

我同意可维护性因素。 完成初始布局的确花了我一点时间(因为我仍然是CSS领域的绝地徒弟),但仅更新1个文件就对15页的网站进行全面的改进是天堂。

===============>>#19 票数:0

这是一个好的做法,还有一些其他原因:

  • 可访问性-理想情况下,所有人都应该可以访问网络
  • 性能-节省带宽并在移动设备上更快地加载(这些设备在某种程度上缺乏带宽并且无法快速布局复杂的表)。 除了快速加载始终是一件好事...

===============>>#20 票数:0

当屏幕阅读器阅读页面并看到表格时,它将告诉用户这是一张表格。 因此,如果您使用表格进行布局,那么它将变得非常混乱,因为用户不知道表格的内容实际上是商品,而不是其他表格数据

这实际上是不正确的。 JAWS,Window Eyes和HAL等屏幕阅读器会忽略布局表。 他们在与真实网络打交道方面表现出色。

===============>>#21 票数:0

我认为根本没有商业原因。 技术原因,也许,即使这样,也几乎没有-这是世界各地的巨大麻烦,然后您在IE中查看它,然后崩溃并哭泣。

  ask by deadprogrammer translate from so

未解决问题?本站智能推荐: