javascript - 将 html 表中的第一个 td 重新设计为 rowspan

标签 javascript html html-table

我有这样的表:

<table>
   <thead>
      <tr>
         <th></th>
         <th>Col1</th>
         <th>Col2</th>
         <th>Col3</th>
         <th>Col4</th>
         <th>Col5</th>
      </tr>
   </thead>
   <tbody>
   <tr>
       <td class="control"></td>
       <td>AA</td>
       <td>BB</td>
       <td>CC</td>
       <td>DD</td>
       <td>EE</td>
   </tr>
   ...
</table>

由于页面大小调整,我想将该表格更改为如下表格设计。该更改应仅应用于奇数行,因为偶数行被隐藏,并且当我单击第一个具有控制类的 td 时,它会显示。

<table>
    <tr>
       <td rowspan="6" class="control"></td>
    </tr>
    <tr>
       <td>Col1</td>
       <td>AA</td>
    </tr>
    <tr>
       <td>Col2</td>
       <td>BB</td>
    </tr>
   <tr>
       <td>Col3</td>
       <td>CC</td>
    </tr>
<tr>
       <td>Col4</td>
       <td>DD</td>
    </tr>
    <tr>
       <td>Col5</td>
       <td>EE</td>
    </tr>
   ...

检查此链接 https://jsfiddle.net/pmtgqmsa/2/

最佳答案

您可以使用弹性框来完成此类任务。

flex-box 能够改变当前内容从行到列的流动。只需将 flex-flow: column; 更改为 flex-flow: row;

这是fiddle

您可以在css-tricks中了解有关flex-box的更多信息。

由于现在是 div,因此您也不会遇到行/列跨度问题。您可以自由调整高度和宽度。

关于javascript - 将 html 表中的第一个 td 重新设计为 rowspan,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34985591/

相关文章:

php - PHP 中运行时动态绑定(bind)变量

javascript - 如何使用 expressjs、reactjs 持久化数据?

Javascript 多词正则表达式

javascript - 添加,使用Javascript函数添加多个文本框

html - 更改 div 中位置的链接

jquery - 按字母顺序将行插入到表格中的某个单元格上

javascript - 如何在javascript中删除数组中所有字符串的一部分?

javascript - 将自定义指令中的范围正确应用到 AngularJS 中的子元素

html - 伪元素在 CSS 变换上从父元素下方移动到父元素上方

jquery - 复制 html 表行并附加到其他表中