スポンサーサイト
--/--/-- (--) --:--:--
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
スポンサー広告 | page top↑
テーブルセル内での自動改行
2010/04/14 (Wed) 00:41:58
ASP.NETでWebページのテーブルを作成した。

次は、Textが空の2行3列テーブルの例。
<asp:Table id="Table1" runat="server">
<asp:TableRow ID="rowNum1">
<asp:TableCell Text="" ID="TableCell1" Width="40em"></asp:TableCell>
<asp:TableCell Text="" ID="TableCell2" Width="40em"></asp:TableCell>
<asp:TableCell Text="" ID="TableCell3" Width="40em"></asp:TableCell>
</asp:TableRow>

<asp:TableRow ID="rowNum2">
<asp:TableCell Text="" ID="TableCell4" Width="40em"></asp:TableCell>
<asp:TableCell Text="" ID="TableCell5" Width="40em"></asp:TableCell>
<asp:TableCell Text="" ID="TableCell6" Width="40em"></asp:TableCell>
</asp:TableRow>
</asp:Table>

このテーブルのセル内に長い文字列を入れた時、自動改行するようにしたい。
上のWidth="40em"のようにセルの幅指定があれば自動改行されて見えるブラウザもある。

しかし動作確認に使ったIE8ではデフォルトの表示設定がW3C準拠だそうで、
このままでは自動改行されずにセルが横に長くなってしまう。
(IE8でも「互換表示」を指定すると(※)自動改行が反映されて見える)

しばらく調べて
<asp:TableCell Text="" ID="cellPrevBody" Width="40em" style="white-space:normal" ></asp:TableCell>
と、style="white-space:normal" を追加することでIE8のデフォルトでも自動改行ができるようになった。

スタイルシートリファレンス(white-space):http://www.htmq.com/style/white-space.shtml

しかしwhite-space:normalの説明から当然のことなのだが、これをすると
連続する半角スペースなどは1つの半角スペースにまとまってしまう。

連続半角スペース等をそのままに、自動改行もできる方法はないのだろうか。


※IE8で「互換表示」指定
 参考:http://cbr1100xx.ic-blog.jp/mebi/2009/04/internetexplore.html
未分類 | トラックバック(0) | コメント(0) | page top↑
<<雷が鳴る前に | ホーム | C++ std::vectorの疑問点解決>>
コメント
コメントの投稿













管理者にだけ表示を許可する

トラックバック
トラックバックURL
→http://kerorou.blog84.fc2.com/tb.php/146-112f840a
| ホーム |
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。