• ベストアンサー

tableの幅をがっちり固定

<table width="500"> <tr> <td> 長い文字列長い文字列長い文字列長い文字列長い文字列.... </td> ... の場合、widthで500ピクセル幅を指定しているにもかかわらず横幅が500以上に成ってしまいます。 文字列に改行を加えればいいのですが、改行をしない方法で指定した500px内に納めることはできないでしょうか? よろしくお願いいたします。

  • HTML
  • 回答数4
  • ありがとう数0

質問者が選んだベストアンサー

  • ベストアンサー
  • goldfox
  • ベストアンサー率49% (123/249)
回答No.4

<pre>でも使ってるんでしょうか? >改行をしない方法で指定した500px内に納めることはできないでしょうか? overflow(とwhite-space)を使う。 td { width: 500px; overflow: auto; white-space: nowrap; } http://www.tagindex.com/stylesheet/box/overflow.html http://www.tagindex.com/stylesheet/text_font/white_space.html <pre>を使っておいて自動的に折り返し、というのは無理です。 折り返しをしないのが<pre>ですから。

その他の回答 (3)

  • ORUKA1951
  • ベストアンサー率45% (5062/11036)
回答No.3

>widthで500ピクセル幅を指定して >改行をしない方法で指定した500px内に納めることはできないでしょうか? 物理的に不可能ですが????? 5mの車を2mの車庫には入れられない。

noname#83877
noname#83877
回答No.2

文字列は英語でしょうか? テストするときに aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa のように半角スペースを入れないと確かにはみ出ますが、普段は改行されると思うのですが・・・

noname#83877
noname#83877
回答No.1

table { width:500px; table-layout:fixed; } でどうでしょう?

Intel_404
質問者

補足

回答有り難うございます。 以上の方法ですと各カラムの幅が均等になるだけで文字はテーブルからはみ出したままです。

関連するQ&A

  • テーブルの幅固定について

    テーブルの幅固定を以下のように行っているのですが文字が指定した幅を超えると、 幅を指定してるにも関わらず、文字が改行せずに幅が伸びてしまいます。 自動的に改行になるとばかり思っていました。 <br>での改行は考えていないので、テーブルの幅を絶対的に固定する方法ありますでしょうか? <table width="50" border="0" style="background-color: #cecece"> <tbody> <tr> <td>AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA</td> </tr> </tbody> </table>

    • ベストアンサー
    • HTML
  • テーブル<TD>の幅の固定

    テーブルのTD幅をWIDTHで指定しているのですが、入力するテキストによって幅が動いてしまいます。 例) <table width="50">  <tr>   <td width="10">AAAAAAAAAAAAAAAA</td>   <td width="40">AA</td>  </tr> </table> というような場合、幅の狭い方のセル幅が広くなってしまいます。 また逆に広い方が何度も改行させられて出力されたり、出力させたいテキストによって、いかようにも幅が変更されてしまいます。 他のサイトなども色々調べてみて、半角英数字の場合は特に顕著ということも書かれてあったのですが、半角英数字の出力は必須なんです。 (全角文字の場合でも、完全に固定とはなりませんでした) やっぱり完全にテーブルのセル幅を固定するのはムリなのでしょうか? 何か解決方法はありますでしょうか? よろしくお願いします。

    • ベストアンサー
    • HTML
  • table の幅を固定したい

    初心者です。教えて頂けますか? テーブル内に、php pear mdb2 を利用して文字列を入れているのですが、 文字列が長いのですが、シングルバイト文字とマルチバイト文字で挙動が異なっています。 指定している幅で固定したいのですが どうすれば良いでしょうか? 申し訳ありません。よろしくおねがいします。 <table width="380" border="1" cellspacing="0" cellpadding="0"> <tr> <td> あいうえお。あいうえお。あいうえお。あいうえお。あいうえお。あいうえお。あいうえお。あいうえお。あいうえお。あいうえお。... </td> </tr> </table> <table width="380" border="1" cellspacing="0" cellpadding="0"> <tr> <td> yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy... </td> </tr> </table>

    • ベストアンサー
    • HTML
  • ●○■□などの文字を含んだ<td>の幅指定について

    Firefoxで表示確認をしています。 <table border="1" width="100"> <tr> <td>あああああああああああ</td> </tr> </table> だと、幅100pxの位置で自動的に改行されるのですが、 <table border="1" width="100"> <tr> <td>●●●●●●●●●●●</td> </tr> </table> だと改行ず、幅がオーバーしてしまいます。●以外にも○■□などでも同じでした。 ●を使いつつ、指定した幅で改行させることはできないでしょうか?

  • HTMLでテーブル幅を固定しても文字が折り返せない

    HTMLのテーブル幅を文字が突き抜けて幅が広がってしまって困っています。 例としては以下のような連続した文字が入った場合です。 <table width="150"> <tr><td width="150">aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaあいおえう </td></tr> </table> どなたか、適切に折り返すにはどうしたらよいかご存知の方おりましたら、おしえてください。

    • ベストアンサー
    • HTML
  • TABLEタグの幅指定

    テーブルの幅を厳密に指定したいのですが、 例えば以下のような1行2列のテーブルがあるとき、 <TABLE CELLSPACING=1 CELLPADDING=4 BORDER=0> <TR> <TD WIDTH=100>***</TD> <TD WIDTH=100>***</TD> </TR> </TABLE> このような場合にテーブルタグにWIDTH属性を加えるとすると、 100*2+4*4+1*3=219で、WIDTH=219が正確な値なのでしょうか? よろしくお願いします。

  • tableの中にtableを作ると、width指定が機能しない

    tableの中にtableを作り、中側にあるテーブルの列ごとにwidthを指定したいのですが、うまくいきません。ソースを書いてみます。 例: <table width=300> <tr><td> <table width=100> <tr><td>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</td><tr> </table> </td><td> <table width=100> <tr><td>bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb</td><tr> </table> </td><td> <table width=100> <tr><td>ccccccccccccccccccccccccccccccccccc</td><tr> </table> </td></tr> </table> width=300のテーブルの中にwidth=100のテーブルが3つできたのはいいのですが、width=100のテーブルの中に100pxを超える文字列を入れると100pxという値を無視してテーブルが横長くなってしまいます。 これを100pxという値に従わせるにはどうしたらいいでしょうか?

    • ベストアンサー
    • HTML
  • テーブルの幅を固定するとnowrapがきかなくなるのですが・・・

    いつもお世話になっております。どなたか教えて下さい。 テーブルの幅を”width=***”で固定しました(tableタグもtdタグも両方)。文字列を改行したくないので”nowrap”を書いて改行不可にしたら、改行は回避できたものの、幅が固定されずに文字の長さに合わせられてしまいました。 そこでこのサイト内で方法を模索していると”style=table-layout:fixed”で固定できると書いていたので追加すると幅の固定は出来たのですが、今度は文字列が改行されてしまいました。 どうすれば幅を固定し、改行も回避できるのでしょうか? 文字列が長すぎるものは途切れていてもOKなので、枠をとにかく固定したいのです。 どなたか回答御願い致します。 ブラウザはIE5か6です。

  • 【IE6】テーブルにcolspanが入ると幅指定がずれる?

    閲覧いただきありがとうございます。 <Html>にて、<table>を入れているのですが <colspan>すると幅指定がずれてしまいます。 タグ記述のミスなのか、仕様なのかはっきりと分からない為 質問させていただきます。 下記のようなテーブルを作っています。 【テーブル】 テーブル幅 500px 2行 5列:(各列100pxの5等分) 【列内容】 1行目 ├5列全て colspan 2行目 ├1列目:100px ├2-3列目:100+100=200px (colspan=2) ├4-5列目:100+100=200px (colspan=2) ここで、2-3列目に幅200pxに指定した <select>タグを入れると、意図しない幅になってしまいます。 意図している動きは 2-3列目の幅ぴったりに<select>が入ってほしいのですが 4-5列目の4列部分がえぐれてしまい、4-5列目が200pxではなく 100pxぐらいの描画になってしまいます。 そして<select>タグは2-3列目にぴったりと入らず、 後ろに100pxの空きがでてしまいます。 http://kikky.net/pc/css_bug020.html このサイトではIE6ではcolspanがあると幅指定がずれると なっていますが、同一の現象なのでしょうか? 示唆いただければ幸いです。 宜しくお願いします。 --------------記述html--------------- <html> <head> <title> ColSpanテスト </title> </head> <body> <table width="500" border="1" cellspacing="0" cellpadding="0" bordercolor="#000000" style="border-collapse: collapse;" > <colgroup> <col width="100" /> <col width="100" /> <col width="100" /> <col width="100" /> <col width="100" /> </colgroup> <!-- 1行目 --> <tr> <td colspan="5"> span5 </td> </tr> <!-- 2行目 --> <tr> <!-- 1列目 --> <td> </td> <!-- 2-3列目 --> <td nowrap colspan="2" > <select style="width:200px;" size="1" name="sl" id="sl"> <option value="99999">2列にしたい</option> </select> </td> <!-- 4-5列目 --> <td colspan="2" > 200pxなのに・・・ </td> </tr> </table> </body> </html>

  • widthを設定してもテキストを流すと幅が広がってしまう

    トップページの左ナビの部分です。 1行2列の大テーブルの、左のtdが左ナビになっています。 ↓こんな感じです。 <table width="800"> <tr><td>左ナビ</td></tr> <tr><td>内容</td></tr> </table> この左ナビ部分を更に<div>で区切って、 その<div>の中に改行なしのテキストを流し込むと大テーブルの幅800まで広がってしまいます。 幅170pxの指定方法は、<div class="navi">というふうにwidth指定を含むcssをつけています。 cssではダメなのかと、<div>なしで tdのwidth指定だけにしてみてもダメでした。 方法を教えてください。

専門家に質問してみよう