1

我想在 HTML 表格中垂直书写。在最后一列中,我希望将文本“时间表”垂直显示。它应该覆盖所有行。像这样的东西:

大号

ü

ñ

C

H

这该怎么做 ?这是我要创建的表。

<table style = "border-collapse: collapse"  border = "1px">

  <thead>
    <tr>
    <th colspan="6" align="center"> Time Table </th>
    </tr>


    <tr>
       <th>DAY/TIME</th>
       <th>8-9</th>
       <th>9-10</th>
       <th>10-11</th>
       <th>11-12</th>
      <th rowspan = "6" style="verticle-align: buttom">Lunch Break</th>
     </tr>

    <tr>
      <th>Mon</th>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
    </tr>

    <tr>
      <th>Tue</th>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
    </tr>

    <tr>
      <th>Wed</th>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
    </tr>

    <tr>
      <th>Thu</th>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
    </tr>

    <tr>
      <th>Fri</th>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
    </tr>


  </thead> 

</table>
4

3 回答 3

5

将您的午休文本放入 div 并应用此 css

word-wrap: break-word;width:11px;

看看这个jsfiddle 演示

于 2013-01-11T05:46:25.107 回答
0

将一个 id(或类)添加到您想要垂直文本的 th 中,然后您可以添加以下 jQuery 函数 - 在每个字符后添加一个换行符:

$(function() {
    var html=$('#verticalText').html();
    var newHtml='';
    for (var i=0;i<html.length;i++) {
        newHtml=newHtml+html[i];
        newHtml=newHtml+'<br/>';
    }
    $('#verticalText').html(newHtml);
});

http://jsfiddle.net/K3Ab2/

(修改自 Naor 的回答:在长单词中的 n 个字母后添加换行符

于 2013-01-11T05:32:20.840 回答
0

使用以下 HTML 代码

<table id="MyTable" style = "border-collapse: collapse"  border = "1px">

时间表

<tr>
   <th>DAY/TIME</th>
   <th>8-9</th>
   <th>9-10</th>
   <th>10-11</th>
   <th>11-12</th>
  <th rowspan = "6" id="vertical" style="verticle-align: buttom">Lunch Break</th>
 </tr>

<tr>
  <th>Mon</th>
  <td></td>
  <td></td>
  <td></td>
  <td></td>
</tr>

<tr>
  <th>Tue</th>
  <td></td>
  <td></td>
  <td></td>
  <td></td>
</tr>

<tr>
  <th>Wed</th>
  <td></td>
  <td></td>
  <td></td>
  <td></td>
</tr>

<tr>
  <th>Thu</th>
  <td></td>
  <td></td>
  <td></td>
  <td></td>
</tr>

<tr>
  <th>Fri</th>
  <td></td>
  <td></td>
  <td></td>
  <td></td>
</tr>

使用以下 CSS

table#MyTable tr th#vertical {
    width: 1.2em;
    white-space: nowrap;
    color: #000;
    /*Firefox*/
    -moz-transform: rotate(-90deg);
    /*Safari*/
    -webkit-transform: rotate(-90deg);
    /*Opera*/
    -o-transform: rotate(-90deg);
    /*IE*/
    writing-mode: tb-rl;
    filter: flipv fliph;
    border:1px black solid;
}

看到这个链接

于 2013-01-11T05:39:11.307 回答