【发布时间】:2016-09-28 02:20:32
【问题描述】:
我在我的网站上显示了一些表格数据,所以我决定使用一些表格。最佳做法是为表格列使用固定宽度(即 100 像素)还是使用基于百分比的宽度?
【问题讨论】:
标签: html html-table
我在我的网站上显示了一些表格数据,所以我决定使用一些表格。最佳做法是为表格列使用固定宽度(即 100 像素)还是使用基于百分比的宽度?
【问题讨论】:
标签: html html-table
我不推荐固定宽度,因为浏览器的文本大小可能不同。 正确的做法是什么都不做!让表格自行调整大小。强制表格为 100% 宽是一种选择,但会留下很多空白。
我的手机、电视机或台式电脑上的桌子有多大?你越是强制布局,它在意想不到的平台上看起来就越糟糕。
【讨论】:
我同意 Quigley 的观点,但是“正确”的方法很大程度上取决于您的具体情况。如果您只需要在网站上显示纯数据,基本上只是打印出 HTML 格式的数据,我也会让表格保持原样。你应该做的是将它的宽度设置为 100% s.t.它在页面的整个宽度上展开。如果它驻留在另一个容器内(例如 div 或其他标签),它将扩展到该容器的宽度。
如果你想让你的表格只扩展到某个宽度,我会选择百分比值而不是固定表格,主要是因为你的用户会有不同的显示尺寸和分辨率,因此相应的浏览器窗口可能会有所不同。但是,在这种情况下,我会考虑诸如 min-width 之类的属性,它指定您的表格将获得的最小宽度。该属性在 Firefox、Safari 等上完美运行。但是在 IE 上(像往常一样),您必须通过在 CSS 类中添加类似以下内容(添加到 HTML 的封闭容器中)来实现最小宽度表或表本身):
width: expression( this.scrollWidth < 70 ? "70px" : "auto" );
这只是一个示例,指定最小宽度为 70px,否则不设置任何宽度。您可以根据需要对其进行自定义。
【讨论】:
固定像素宽度绝对是最糟糕的选择。百分比要好得多。如果您想定义相对于页面上其他元素的列宽,最好的选择是使用 CSS 和 em 之类的单位 relative to the text size。
【讨论】:
对于表格数据,我认为相对(百分比)应该不错。
但如果你觉得屏幕尺寸可能会搞砸你的桌子,请选择固定的方法。
【讨论】:
我广泛使用 (d) 比例宽度与必须在浏览器和 CSS2XSLFO 中工作的 HTML。
然而 Firefox 3.x 已移除对表格列中 PCW 宽度的支持。
见https://bugzilla.mozilla.org/show_bug.cgi?id=333352
所以你必须使用 % 宽度。
我从不使用固定宽度(例如 50 像素),但除了 pcw 或百分比宽度之外,我确实使用 em 或 ex 单位。
【讨论】:
关于 DeadAccount 的回答,不要使用 W3Schools,他们有一半正确信息的习惯。
另外,我很确定最佳做法是使用百分比而不是固定宽度,因为正如其他人所说,如果其他浏览器使用与您不同的设置,固定会在其他浏览器中搞砸。然而,最好的做法可能就是不理会它。
【讨论】: