2013-02-04 27 views
0

我使用Richfaces並且具有嵌套rich:tooltip-s的rich:datatable。 你可以想象生成的HTML看起來像這樣:當使用rich:dataTable與嵌套的rich時生成錯誤的CSS:tooltip

<table style="width: 400px; border: 3px solid #000; caption-side: bottom; border-collapse:collapse;"> 
    <caption align="bottom">Table 1.1: A record of the fur shed annually by Jennifer's dog Shasta</caption> 
    <thead> 
    <tr> 
     <th>Month</th> 
     <th>Fur Shed (mm)</th> 
    </tr> 
    <thead> 
    <tbody style="background-color: #ff3;"> 
    <tr> 
     <td>April</td> 
     <td>20</td> 
    </tr> 
    <tr> 
     <td>May</td> 
     <td>19</td> 
    </tr> 
    <tr> 
     <td>June</td> 
     <td>10</td> 
    </tr> 
    <tr> 
     <td>July</td> 
     <td>6</td> 
    </tr> 
    <tr> 
     <td>August</td> 
     <td>8</td> 
    </tr> 
    <tr> 
     <td>September</td> 
     <td>14</td> 
    </tr> 
    </tbody> 
    <tbody> 
<tr> 
    <td style="display:none;"> 
    <script type="text/javascript"> 
    new RichFaces.ui.DataTable("form1:table1:0:j_idt227",{"ajaxEventOptions":{}}) 
    </script> 
    </td> 
</tr> 

與這個網站的問題是在第二個(從RF生成)TBODY:TD風格=「顯示:無;」,並在Google Chrome中導致底部邊框未顯示。

我的問題是:你知道是否有可能找到解決辦法來解決這個問題?移動display:none;trtbody等級已經是一個解決方案。

謝謝!

回答

1

您可以添加頁腳表(<f:facet name="footer">),這將隱藏的行下渲染,但如果你不想,你可以使用這個CSS:

table > tbody > tr:last-child { 
    border-bottom: 3px solid #000; 
} 

這個會發現最後一排,並在底部添加邊框,當然這會影響頁面上的每個表格,因此您應該使用一些標識符。另請注意,:last-child選擇器可能不被所有瀏覽器支持(它可在Chrome中使用)。

其他替代方法是將表格封裝在div中,但您需要使用CSS播放一點,以使其看起來像您想要的樣子。