colspan相当于css?

时间:2014-06-29 08:06:10

标签: html css

第一个表格行如下所示:

....

<tr>
   <th colspan="2">Add a category</th>
</tr>

...

它呈现正确。但是我希望它没有colspan属性,而是在CSS中设置样式。原因是因为有很多相似的表格,所以不需要反复定义属性(只是坚持DRY原则)

我只想把它当成:

<tr>
   <th>Add a category</th>
</tr>

// CSS
table th:first-child {
    /* Pseudo attr */
    colspan : 2px;
}

我尝试过使用floatpaddingwidth但没有成功。有没有办法在纯CSS中做到这一点?

2 个答案:

答案 0 :(得分:0)

据我所知,纯CSS没有办法做到这一点,因为colspan实际上是布局而非风格。

根据this,它似乎在过去的某些浏览器中得到了支持,但在今天似乎并不值得推荐和支持。

答案 1 :(得分:-1)

这个问题有很多答案:例如,您可以查看here所述的解决方案。 它涉及使用column-span css属性,但如上所述,它不能在旧浏览器上工作。

column-span: 4; /* W3C */
-webkit-column-span: 4; /* Safari & Chrome */
-moz-column-span: 4; /* Firefox */
-ms-column-span: 4; /* Internet Explorer */
-o-column-span: 4; /* Opera */

Here你可以找到关于这一点的讨论。我同意colspan比外观更结构的观点,因此应保留HTML,但这是个人意见。在同一个线程中,如果您愿意,可以使用div找到解决方案。