可以将项目放在表格之后的另一个项目之下而没有绝对位置吗?

时间:2015-10-16 22:39:56

标签: html css css-position

如果我的表格结构如下:

<table id="tableid">
    <tbody>
        <tr>
            <td id="id1">Button A</td>
            <td id="id2">Button B</td>
            <td id="id3">Button C</td>
            <td id="id4">Button D</td>
        </tr>
    </tbody>
</table>

是否可以在不使用绝对位置(并且不使用js)的情况下,在不使用绝对位置(并且不使用js)的情况下使项目按照特定定义的顺序进行定位?

就像我希望它们从上到下显示:id2,id4,id1,id3。

这是一个允许为你的个人资料定制css样式的网站,但不允许操纵html本身,所以我不能简单地在html中切换它们的顺序。

使用绝对定位有效,但手动定义位置非常尴尬,因为如果我调整1个项目的位置,那么我需要手动为所有这些项目执行。

如果绝对位置是唯一的方法,那么是否可以将项目的绝对位置定义为为另一个+一个金额定义的相同位置?例如,我可以使用top:200px定义id2然后对于id4,我可以从id2中检索该顶部值并向其添加10px,还是需要手动将其设置为210px?

1 个答案:

答案 0 :(得分:1)

Flexbox应该能够实现这一点,因为它们允许对元素的序号位置进行CSS定义。

请参阅StackOverflow上的这篇文章,了解一些应该能够实现您所需要的解决方案:

Switching the order of block elements with CSS