仅使用css而不使用javascript将html表强制为单个堆栈列

前端之家收集整理的这篇文章主要介绍了仅使用css而不使用javascript将html表强制为单个堆栈列前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在创建一个html模板,它包装了一个用于布局表单的表.我可以完全控制包装表而不是表本身的html.在将表发送到客户端之前,该表将注入我的模板中.我无法控制这一点.我唯一能控制的是包装表和任何CSS的html.

该表是一个两列表,如下所示:

  1. <table>
  2. <tr>
  3. <td>Column 1</td>
  4. <td>Column 2</td>
  5. </tr>
  6. <tr>
  7. <td>this is column 1</td>
  8. <td>this is column 2</td>
  9. </tr>
  10. </table>
  11.  
  12. -------------------------------------------------
  13. |Column 1 |Column 2 |
  14. -------------------------------------------------
  15. |this is column 1 |this is column 2 |
  16. -------------------------------------------------

但是我希望我们可以将它显示为一个堆叠列.

  1. ----------------------------
  2. |Column 1 |
  3. -----------------------------
  4. |this is column 1 |
  5. -----------------------------
  6. |Column 2 |
  7. -----------------------------
  8. | this is column 2 |
  9. -----------------------------

有没有办法实现这个只使用CSS,没有JavaScript.

解决方法

不,如果不改变标记,这是不可能的. HTML中的表格被构造为行,而不是列.在示例中,您将重新订购内容

原始订单:
第1栏 – >第2栏 – > this-is-col-1 – >这-是-COL-2

新订购:
第1栏 – > this-is-col-1 – >第2栏 – >这-是-COL-2

为什么我说“不合理”?好吧,凭借绝对的定位和类似的技术,你可以一起破解你想要的布局 – 但是有一个CSS伤害的世界等待,因为我不希望这种方法在真实页面中发挥出色.

附加说明:要添加到“重新排序”问题,可能更容易实现的是这种布局,其中顺序保持不变:

  1. ----------------------------
  2. |Column 1 |
  3. -----------------------------
  4. |Column 2 |
  5. -----------------------------
  6. |this is column 1 |
  7. -----------------------------
  8. | this is column 2 |
  9. -----------------------------

但这显然不是你想要的.

猜你在找的CSS相关文章