Html 拿一个TR,只使用CSS强制它变成垂直的(像一个列表)
我有这样的标记:Html 拿一个TR,只使用CSS强制它变成垂直的(像一个列表),html,css,xhtml,Html,Css,Xhtml,我有这样的标记: <tr> <td>test</td> <td>test</td> <td>test</td> <td>test</td> <td>test</td> </tr> 测试 测试 测试 测试 测试 这显然创建了一个水平表。是否可以只使用CSS使该表每行仅显示一项?所需的输出
<tr>
<td>test</td>
<td>test</td>
<td>test</td>
<td>test</td>
<td>test</td>
</tr>
测试
测试
测试
测试
测试
这显然创建了一个水平表。是否可以只使用CSS使该表每行仅显示一项?所需的输出类似于没有边距或项目符号的无序列表。我想这应该可以做到:
tr, td { display: block; }
它很可能会打破它所在的桌子,但这看起来确实是一件奇怪的事情
更新:我无法让这个(或任何其他技术)在IE8(正常或兼容模式)下工作。它只是拒绝更改表格单元格的显示。很奇怪。对不起,我没有解决方法。我最后做的是: 如上所述 CSS: 它出人意料地简单,但它确实工作得很好
这个问题的根本原因是IE说
tr
和td
已经是block
,所以使用block
没有效果。IE不知道表格行
、表格单元格
和表格
显示模式。你知道,为什么不写正确的HTML符号呢?在我看来,如果你想使用CSS来设计它的样式,列表是一个更好的主意。这是一个不允许你修改HTML的比赛,导航是在一系列的表格中。。。。这很糟糕,但3000美元是值得的。我没有解决IE问题的办法。谢谢,我不知道为什么我没有想到这一点。我认为@cletus至少应该得到15%的帮助:)我非常确定没有修复方法-IE在应用默认定位以外的任何东西时呈现表是非常有问题的。在ie8中就不是这样了,但仍然不对。我找到了自己的解决办法。我已经贴了。它在IE7+上工作。
td { width:100%; float:left; }