jQuery+CSS: 一行代码搞定行列转置

╰+哭是因爲堅強的太久メ 2021-06-24 15:59 610阅读 0赞
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <title>行列转置</title>
  5. <script type="text/javascript" src="//cdn.gbtags.com/jquery/2.1.1/jquery.min.js"></script>
  6. <style type="text/css">
  7. table
  8. {
  9. border: 1px solid #ccc;
  10. font-size: 14px;
  11. }
  12. table th
  13. {
  14. background: orange;
  15. color: #fff;
  16. padding: 10px;
  17. }
  18. table td
  19. {
  20. padding: 10px;
  21. }
  22. table.vertical
  23. {
  24. -webkit-writing-mode: vertical-lr;
  25. -moz-writing-mode: vertical-lr;
  26. -ms-writing-mode: tb-lr;
  27. writing-mode: vertical-lr;
  28. }
  29. table.vertical th, table.vertical td
  30. {
  31. width: 100px;
  32. height: 14px;
  33. }
  34. table.vertical div
  35. {
  36. width: 100px;
  37. -webkit-writing-mode: horizontal-tb;
  38. -moz-writing-mode: horizontal-tb;
  39. -ms-writing-mode: lr-tb;
  40. writing-mode: horizontal-tb;
  41. }
  42. </style>
  43. <script type="text/javascript">
  44. var flag = false;
  45. //注:多次点击后,内面文字会包裹多层div,尚无好的解决方法
  46. function test(){
  47. if(!flag){
  48. $('table').addClass('vertical').find('th, td').wrapInner('<div>');
  49. //$('table').addClass('vertical');//数字会变垂直,不能用
  50. }else{
  51. $('table').removeClass('vertical');
  52. }
  53. flag=!flag;
  54. }
  55. </script>
  56. </head>
  57. <body>
  58. <table>
  59. <tr>
  60. <th>列1</th>
  61. <th>列2</th>
  62. <th>列3</th>
  63. <th>列4</th>
  64. </tr>
  65. <tr>
  66. <td>数据1-1</td>
  67. <td>数据1-2</td>
  68. <td>数据1-3</td>
  69. <td>数据1-4</td>
  70. </tr>
  71. <tr>
  72. <td>数据2-1</td>
  73. <td>数据2-2</td>
  74. <td>数据2-3</td>
  75. <td>数据2-4</td>
  76. </tr>
  77. <tr>
  78. <td>数据3-1</td>
  79. <td>数据3-2</td>
  80. <td>数据3-3</td>
  81. <td>数据3-4</td>
  82. </tr>
  83. </table>
  84. <input type="button" οnclick="test()" value="行列转置" />
  85. </body>
  86. </html>

Chrome 39.0.2171.95 m, IE 11 通过

参考: http://www.gbtags.com/gb/share/4511.htm

发表评论

表情:
评论列表 (有 0 条评论,610人围观)

还没有评论,来说两句吧...

相关阅读