在内联样式中将宽度设置为星号的目的是什么?

时间:2011-12-01 21:54:19

标签: html css

所以,也许这是一个错字,但我遇到了一些旧代码:

<td valign="top" width="*">
这是一个错字吗?或者这会做些什么特别的事情吗?

3 个答案:

答案 0 :(得分:7)

这允许意味着“剩余空间”。你可以结合使用几个。 e.g ..

<td valign="top" width="*">...</td><td valign="top" width="2*">...</td>

这两列将共同使用所有可用的水平空间。第二个是第一个宽度的两倍。

<强>更新

为回应下面的评论,我在W3网站上找到了以下内容:

比例规范(例如,width =“3 *”)指的是表所需的水平空间部分。如果通过TABLE元素的width属性为表宽度赋予固定值,则用户代理可以使用比例列以递增方式呈现表。

但是,如果表没有固定宽度,则用户代理必须先接收所有表数据,然后才能确定表所需的水平空间。只有这样才能将这个空间分配给比例列。

来源:http://www.w3.org/TR/html4/struct/tables.html

答案 1 :(得分:1)

“*”是HTML中定义的 MultiLength 值。请参阅:http://www.w3.org/TR/html4/types.html#h-6.6

答案 2 :(得分:1)

这不是“内联样式”,而是应该避免支持CSS的遗留HTML。但是,要回答你的问题,它实质上意味着“填补”。但是,在实践中它没有任何影响,可以安全地删除。

http://jsfiddle.net/sn4qn/5/

也许它是未来开发者的一个指标,宽度是由浏览器自动设置的。