如何将td文本对齐到表格的左侧

时间:2013-07-26 06:36:07

标签: html html5 jsp html-table

我在JSP文件中创建了一个表格,如下所示:

JSP代码:

<table style="width: 832px;" >
    <tr>
        <td style="width: 45px;text-align: left;" align="left"><%=episodeDate %></td>
        <td style="width: 7px;">&nbsp;</td>
        <td style="width: 257px;text-align: left;" ><%=careprovidername %></td>
        <td style="width: 7px;">&nbsp;</td>
        <td style="width: 260px;text-align: left;" ><%=docatorname %></td>
        <td style="width: 6px;">&nbsp;</td>
        <td style="width: 250px;text-align: left;"><%=purposeType %></td>
    </tr>
</table>

但我得到的是显示在下图中。

Table

我的问题是第5和第7个td数据没有很好地对齐。这段代码有什么问题?

2 个答案:

答案 0 :(得分:1)

在JSP中,您应该在一个表中循环。通过您的代码,您似乎可以在可见代码之外重新设置变量的值。如果是这样,您将生成多个1行表。然后修复将你的java变量设置在&lt;表&gt; ......&lt; / table&gt;标签,为每个java对象创建新的TR和TD。

使用单个表格,您的TD应该按照您的意愿对齐。

<table style="width: 832px;" >
<%
MyObject o; // which has those variables
for (int i=0; i<array_size; ++i){
    o = array[i]; %>
    <tr>
        <td style="width: 45px;text-align: left;" align="left"><%= o.getEpisodeDate() %></td>
        <td style="width: 7px;">&nbsp;</td>
        <td style="width: 257px;text-align: left;" ><%= o.getCareproviderName() %></td>
        <td style="width: 7px;">&nbsp;</td>
        <td style="width: 260px;text-align: left;" ><%= o.getDocatorName() %></td>
        <td style="width: 6px;">&nbsp;</td>
        <td style="width: 250px;text-align: left;"><%= o.getPurposeType() %></td>
    </tr>
<% } %>
</table>

这里的想法是:

<table>
    <tr> <td></td>*7 </tr>
    <tr> <td></td>*7 </tr>
    <tr> <td></td>*7 </tr>
    <tr> <td></td>*7 </tr>
    <tr> <td></td>*7 </tr>
    <tr> <td></td>*7 </tr>
</table>

因此,设置java变量值的循环必须位于&lt;表&gt; ......&lt; /表&gt;标签,而不是之前。

答案 1 :(得分:0)

感谢Gintas K's comment,我通过向table-layout: fixed;的样式添加<table>来解决了这个问题。