【发布时间】:2014-05-25 00:45:39
【问题描述】:
我已旋转表格标题中的文本,并尝试将其与单元格底部对齐。垂直对齐不会改变任何东西,所以我将每个元素包装在一个 div 中,并试图让它以这种方式工作,但没有成功。
http://jsfiddle.net/pelagic/faLVN/有一个例子
HTML
<div id="galley">
<table width="115%">
<thead><tr>
<th width="7%" rowspan="2" class="vertical-label"><div class="vheader">One</div></th>
<th width="7%" rowspan="2" class="vertical-label"><div class="vheader">One</div></th>
<th width="7%" rowspan="2" class="vertical-label"><div class="vheader">One</div></th>
<th colspan="11">Regions</th>
<th width="25%" rowspan="2" class="vertical-label"><div class="vheader">References</div></th>
</tr>
<tr>
<th width="auto" height="130px" class="vertical-label"><div class="vheader">Antarctic</div></th>
<th width="auto" height="130px" class="vertical-label"><div class="vheader">Arctic</div></th>
<th width="auto" height="130px" class="vertical-label"><div class="vheader">Baltic Sea</div></th>
<th width="auto" height="130px" class="vertical-label"><div class="vheader">Black Sea</div></th>
<th width="auto" height="130px" class="vertical-label"><div class="vheader">Caspian Sea</div></th>
<th width="auto" height="130px" class="vertical-label"><div class="vheader">Indo Pacific</div></th>
<th width="auto" height="130px" class="vertical-label"><div class="vheader">Mediterranean Sea</div></th>
<th width="auto" height="130px" class="vertical-label"><div class="vheader">North Atlantic</div></th>
<th width="auto" height="130px" class="vertical-label"><div class="vheader">North Pacific</div></th>
<th width="auto" height="130px" class="vertical-label"><div class="vheader">South Atlantic</div></th>
<th width="auto" height="100px" class="vertical-label"><div class="vheader">South Pacific</div></th>
</tr>
</thead>
<tfoot></tfoot>
<tbody><tr><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
<tr class="alt"><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
<tr><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
</tbody>
</table>
</div>
CSS
#galley {
width: 738px;
height: auto;
border: 1px #CCCCCC;
float:none
}
#galley table, th, td {
border: 1px solid black;
border-collapse:collapse;
}
#galley th.vertical-label{
-webkit-transform: rotate(270deg) ;
-moz-transform: rotate(270deg);
-o-transform: rotate(270deg);
writing-mode: lr-tb;
}
#galley th, th.vertical-label{
font-family: "myriad Pro";
font-decoration: bold;
}
#galley .vheader{
display:table-cell;
vertical-align:bottom
}
【问题讨论】:
-
注意:
height="130px"是错误的。它要么是 HTML 中的height="130",要么最好将其移动到您的 CSS 中,它是height: 130px
标签: html css text rotation vertical-alignment