2013-03-08 64 views
8

我製作一個表格,並希望第一個單元格從右側開始而不是從左側開始爲默認。 我試着改變CSS中的float屬性,但它似乎沒有幫助。 下面是代碼:從右到左打印表格單元格

<table border="0" width="100%" cellspacing="0" align="center" class="result_table"> 
    <tr align="right"> 
    <th bgcolor="#cccccc" align="right">1</th> 
    <th bgcolor="#cccccc" size="17">2</th> 
    <th bgcolor="#cccccc">3</th> 
    <th bgcolor="#cccccc">4</th> 
    </tr>; 

</table> 
table.result_table { 
    float:right; 
} 

任何人都可以提出一個方法來改變這種表的浮動?

+0

你想要改變什麼?第一個單元格的內容? – 2013-03-08 12:19:30

+3

爲什麼不使用'direction:ltr;'作爲單元格? – 2013-03-08 12:20:37

+0

將表格方向更改爲''rtl' insted'float' – Alireza41 2013-03-08 12:24:57

回答

0

我不確定這是否可以用CSS來實現。如果使用jQuery是好對你來說,這裏是一個起點想法,可能會得到你想要的結果:

CSS:

.result_table{float:left; width:100%; border-collapse:collapse; padding:0;} 
.result_table th{float:right; padding:0;} 

JS:

var cols = $('.result_table th').length; 
var colWidth = 100/cols; 
$('.result_table th').css({width:colWidth+'%'}) 

示例 - jsFiddle

+0

感謝您的評論,但rtl爲我完美工作。 – antonpuz 2013-03-08 12:55:48

11

正如評論中所建議的,您可以將方向性設置爲從右到左(RTL)。但是,除非您的表格內容採用從右到左的語言,否則還應該將表格內容元素的方向性設置爲從左到右。否則,他們會繼承RTL方向性,這在許多情況下都會導致意外,因爲方向性還會設置整個文本的方向性。這不會影響西方語言的正常文本,但會影響內容如「4(5)」,它將以RTL方向性顯示爲「(5)4」。

因此,你應該設置

table.result_table { 
    direction: rtl; } 
table.result_table caption, table.result_table th, table.result_table td { 
    direction: ltr; } 
0

還有一個更簡單的方法。您可以將direction="rtl"添加到表中。

<table dir="rtl"> 
    ... 
</table>