• 締切済み

改行禁止の応用

今ホームページビルダー(V.10)で、サイトを作っているのですが… 表を作り、幅を224ピクセルで指定し、そのセルの中に文字を入れています。文字を改行禁止(<NOBR>~</NOBR>)にしているのですが、224ピクセルよりも量が多いので、表の幅が広がってしまいます。 必ず表の幅は224ピクセルにし、それより文字量が多くなるようでしたら、文字を切り捨てて、それ以上は表示しないようにはできないでしょうか? お願い致します。

みんなの回答

回答No.4

>margin:0; 間違えた >margin:auto; であった方が良さげですね、多分。

回答No.3

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Q3631196 TestCase 1</title> <style type="text/css"> table{ border-style:none; table-layout:fixed; /* ここの説明よろしく(丸投げ) */ width:224px; margin:0; padding:0; } tr{ margin:0; padding:0; border-style:none; } td{ border-style:none; /* http://www.w3.org/TR/CSS21/visufx.html#propdef-overflow わざわざブロックレベル要素を作る必要がないんじゃない? Applies to : table cellsがあるんだし。 */ overflow:hidden; margin:0; padding:0; } col#sample{ width:100%; /* これが大丈夫か調べるの面倒くさがっているけど。*/ } </style> </head> <body> <table> <col id="sample" /> <tr><td>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</td></tr> </table> </body> </html>

  • quads
  • ベストアンサー率35% (90/257)
回答No.2

nobrでマークアップする理由が想像できませんが、 td要素の子孫にブロックレベル要素を置いて overflow: hidden を指定すれば可能です。 <td><nobr>内容</nobr></td> という形であれば、 nobr { display: block; width: 224px; overflow: hidden; } を指定すれば実現できるかもしれません。

  • ozwel
  • ベストアンサー率12% (1/8)
回答No.1

文字を切り捨ててしまって、意味をなすのでしょうか? セルの幅は設定してもセルの中に入ってくる文字などによって大きさは変わってしまいます (224ピクセルの中に300ピクセルの写真を表示させたらセルも300になってしまいます) 最初から文字を書かないのが一番だと思います。

TKYJ08
質問者

補足

なるべく多くの文字を載せたいのですが、幅は大きくしたくないのです。もし、初めから文字を決めてしまうと、ディスプレイによって、大きさが変わってきますので、あるディスプレイに表示される幅でしたら、きれいに載りますが、Macなどになればディスプレイに表示される幅が少し小さいので、文字が2段になってしまいます。どうすればよいのでしょうか? お願いします。

関連するQ&A