以下是使用表规则= all with cell borders
的简单表格示例<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Untitled Page</title>
</head>
<body>
<table rules="all">
<tr>
<td style="border: red solid 1px;">
Title
</td>
</tr>
</table>
</body>
</html>
在大多数浏览器(包括Firefox 3.6)中,它在单元格周围出现红色边框,但在Firefox 5(以及IIRC也是Firefox 4)中没有单元格边框。
这是Firefox中的错误还是规范允许的某些变体?
在相关点上,使用表规则属性有什么意义吗?它似乎没有被弃用,但我看不到它做了你在CSS中无法做的任何事情。在这种情况下,ASP.NET自动生成它,否则我永远不会使用它。
答案 0 :(得分:2)
没有规定什么规则=“所有”实际上还没有,所以几乎任何行为都是“正确的”。
也就是说,当前的Firefox行为是将rules =“all”映射到折叠边框模型中的某些边框样式。鉴于该映射的详细信息(目前在http://www.whatwg.org/specs/web-apps/current-work/multipage/rendering.html#tables的HTML5草案中),观察到的行为是正确的。
答案 1 :(得分:1)
只有在存在其他td
的情况下才会显示“规则”。然后风格信息被相邻的单元格部分覆盖。如果您创建一个像这样的3x3表
<table rules="all">
<tr>
<td>foo</td>
<td>foo</td>
<td>foo</td>
<tr>
<td>foo</td>
<td style="border: red solid 1px;">
Title
</td>
<td>foo</td>
</tr>
<tr>
<td>foo</td>
<td>foo</td>
<td>foo</td>
<tr>
</table>
FF5将在“标题”单元格的右侧和底部绘制红线,其他单位为黑色。似乎上部和左侧细胞的样式信息更强大。
希望这有帮助
干杯 tannerli
答案 2 :(得分:0)
我无法回答第一部分 - 虽然我能够通过在表格标签中添加某些类型的边框来实现它:http://pastehtml.com/view/b35h9852w.html
根据w3schools,建议您仅使用CSS进行此类样式设置(我同意)。
但它似乎确实是Firefox中的一个错误。无论如何,我无法找到明确的解释。