環境:
asp.net、.NET4.0、IE9
問題:
使用 ReportViewer 在 IE9 瀏覽時,報表內的表格欄寬,不會依照設計時所設定的寬度顯示
原因:
檢視 ReportViewer 所產生的 iframe 內,發現有一 <td width="100%" height="0/">,在某些瀏覽器下,該 <td> 會占據大量版面,導致原有的報表表格受到擠壓。
解決:
在網頁內加上 CSS 讓該 <td> 無效
<style type="text/css">
td[id*='oReportCell'] {width:100%; !important;}
</style>
並在 ReportViewer 屬性加上 AsyncRendering="false" 使 iframe 套用外層的 CSS 屬性
範例:
<rsweb:ReportViewer ID="ReportViewer1" runat="server" Font-Names="Verdana"
Font-Size="8pt" Height="0px" ProcessingMode="Remote" Width="100%" AsyncRendering="false">
</rsweb:ReportViewer>
本文章參考:
http://faultbucket.ca/2011/10/reportviewer-doesnt-take-full-width-in-internet-explorer/
1 則留言:
學到了!為我解除了一塊大石,感謝!!!
張貼留言