TABLEのwidth設定について

このQ&Aのポイント
  • TABLEのwidth設定について質問です。直近の親要素に対して設定した%で表示されると思うのですが、上記のようなタグで表示した場合、image(画像)が元々の大きさ目一杯に表示されてしまいます。
  • 特にIEでは変に表示されるようです。
  • この問題の原因は何でしょうか?
回答を見る
  • ベストアンサー

TABLEのwidth設定について

<table width="100%"> <colgroup width="50%" /> <colgroup width="50%" /> <tr> <td>あ</td> <td>い</td> </tr> <tr> <td><image src="image/***.jpg" width="100%" align=" center" /></td> <td><image src="image/****.jpg" width="100%" align=" center" /></td> </tr> </table> widthの%定義について質問です。 直近の親要素に対して設定した%で表示されると思うのですが、 上記のようなタグで表示した場合、image(画像)が元々の大きさ目一杯に表示されてしまいます。 (firefoxなどでは正常に直近のtd50%のwidthで表示されましたが、IEでは変に表示されるようです) 何が原因なのでしょうか?よろしくお願いします。

  • zyaba
  • お礼率46% (261/566)
  • HTML
  • 回答数2
  • ありがとう数1

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

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

IMG要素は、置換要素でありインライン要素です。 ブロック要素は、それが所属する直近の親コンテナブロックの内寸を参照しますが、置換インライン要素は内容サイズを参照します。  この処理は、ブラウザによって異なりますのでスタイルシートで記述しましょう。スタイルシートでブロック要素に変更してから、コンテナブロックサイズを参照させます。 <table width="100%"> <colgroup width="50%" /> <colgroup width="50%" /> <tr> <td>あ</td> <td>い</td> </tr> <tr> <td><image src="image/***.jpg" style="display:block;width:100%" width="200" height="60" /></td> <td><image src="image/****.jpg" style="display:block;width:100%" width="200" height="60" /></td> </tr> </table>  strictで作成するようにしましょう。HTML1.1,HTML5では使えません。HTML4.01でもブラウザはサポートしなければならないが、著者が使うのは非推奨です。align属性はありません。

zyaba
質問者

お礼

ありがとうございます。 ご教示いただいた方法でできそうです。 早速確認してみます。

その他の回答 (1)

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

こちらのサンプルを参考にしてください。 画像ははみ出すけど文字ははみ出さないtable - Webデザイン・CSS - 教えて!goo ( http://okwave.jp/qa/q6982218.html )

関連するQ&A

  • テーブル高さ指定タグについて

    テーブル高さ指定タグについて サイズがバラバラの4枚の画像をテーブルを使って同じ幅・高さ縦横各2枚並べて表示したいと思っています。 下記のとおり高さ・幅300と指定をしているにもかかわらず、400×400pixの画像が高さを超えて目いっぱい表示してしまいます。 <table border="1" width="600" height="600" cellspacing="0" cellpadding="0"> <tr> <td width="300" height="300" align="center"> <IMG border="0" src="http://○○○○/f000000_1.jpg"></td> <td width="300" height="300" align="center"> <IMG border="0" src="http://○○○○/f000000_2.jpg"></td> </tr> <tr> <td width="300" height="300" align="center"> <IMG border="0" src="http://○○○○/f000000_3.jpg"></td> <td width="300" height="300" align="center"> <IMG border="0" src="http://○○○○/f000000_4.jpg"></td> </tr> </table> どうすれば、すべて300×300pixの範囲内におさめることができるのでしょうか?

    • ベストアンサー
    • HTML
  • テーブルに画像を入れると、テーブルの幅が広がってしまいます

    HTML初心者の者です。 3行2列のテーブルを作り、左側の列に縮小した画像を入れたのですが、左側の列が画面いっぱいに広がってしまい、画像の幅に合わせて幅を狭くすることが出来ないでいます。 どうしたら、画像の幅に合わせて左列の幅を狭くすることが出来るでしょうか。 その部分のHTMLは、以下の通りです。 <table border="0" align="center"> <tr> <td><img src="*****.jpg" width=20% align="right"> </td> <td>説明文・・・・</td> </tr> <tr> </td><img src="*****.jpg" width=20% align="right"> </td> <td>説明文・・・・</td> </tr> <tr> </td><img src="*****.jpg" width=20% align="right"> </td> <td>説明文・・・・</td> </tr> </table>

    • ベストアンサー
    • HTML
  • テーブルタグ表示が上手くいかない(html・CSS

    下のタグを使うと、ブログに下記画像上部のように表示されているのですが 理想としては画像の下部分のように綺麗に表示したいです。 自分なりに何度かタグを弄っているのですが何度やっても画像上部のように乱れて表示されてしまい ムキー!っとなってます。 大変申し訳ないのですが、画像の下部分のように表示できるタグを教えてください。 何卒お願いします。 画像内のピンクの部分は実際には<img src="で指定された画像になります。 使ったタグ <table border="1"> <td><table id="table-03"> <colgroup> </colgroup><tr> <td><a href="jpg"><img src="i.jpg" alt="" width="150" height="220" class="aligncenter size-full wp-image-227" /></a></td> <td><table id="table-03"> <colgroup> </colgroup> <tr> <tr><td>あああ名</td> <td>いいい</td> </tr> <tr> <td>ううう</td> <td>えええ</td> </tr> <tr> <td>おおお</td> <td>かかかかか~</td> </tr> </table></td> </tr> </table> </DIV> </colgroup><tr> <td><a href="jpg"><img src="i.jpg" alt="" width="150" height="220" class="aligncenter size-full wp-image-227" /></a></td> <td><table id="table-03"> <colgroup> </colgroup> <tr> <tr><td>あああ名</td> <td>いいい</td> </tr> <tr> <td>ううう</td> <td>えええ</td> </tr> <tr> <td>おおお</td> <td>かかかかか~</td> </tr> </table></td> </tr> </table> </DIV>

  • 写真の下に説明文

    こんにちは。 今アルバムのページを作っています。 右側に縮小した写真を縦に並べ、その写真をクリックすると画面中央に拡大されて映るというものです。 拡大された時、写真の簡単な説明文を写真の下に表示させたいんですが、やり方がわかりません。検索してみたんですが、それらしき物が見つからずこちらに参りました。 だいぶ略してますが、下記のようなソースを使って作りますよね?これで、中央に表示させるまでは出来ました。後は各写真の説明文の表示だけなんです。 <script type="text/javascript"> <!-- var img01 = "../photoothers/stamp.jpg"; function startimg(I){  document.image.src=I;  } //--> </script> =中略= <table> <tr> <td align=center> <table border =1> </td> </tr> <tr> <td align=center> <img src="../gif/●.jpg" name="image"> </td> </tr> </table> </td> <td> <table align=right"> <tr> <td align=center> <a href="javascript:startimg(img01)"> <img src="../gif/●.jpg" width="130" height="100"></a> </td> </tr> </table> </td> </tr> </table> 宜しくお願いします。

  • tableの内側の線を表示したい

    タイトルどおり、テーブルの内側の線を書きたいのですが、CSSなどが影響しているようで縦の線が表示されません。 私個人のサイトではないので、他のページのテーブルは変更できないので、私が書いている文章の途中にだけ出てくるテーブルのみに、縦線を表示させたいです。 今後は使うことはないと思うので、できれば、CSSのファイルをいじることなくやりたいのですが、方法がわかりません。アイデアを貸してください。 <table style="height: 614px;" width="496" > <tbody> <tr> <td><img class="size-medium wp-image-1624 aligncenter" src="" alt="12" width="225" height="300" /> <p style="text-align: center;">テキスト</p> </td> <td><img class="size-medium wp-image-1626 aligncenter" src="" alt="11" width="300" height="225" /> <p style="text-align: center;">テキスト</p> </td> </tr> <tr> <td><img class="size-medium wp-image-1584 aligncenter" src="" alt="1022" width="300" height="339" /> <p style="text-align: center;">テキスト</p> </td> <td><img class="size-medium wp-image-1585 aligncenter" src="" alt="1082" width="300" height="339" /> <p style="text-align: center;">テキスト</p> </td> </tr> <tr> <td><img class="size-medium wp-image-1586 aligncenter" src="" alt="1092" width="300" height="339" /> <p style="text-align: center;">テキスト</p> </td> <td><img class="size-medium wp-image-1627 aligncenter" src="" alt="13" width="254" height="339" /> <p style="text-align: center;">テキスト</p> </td> </tr> <tr> <td><img class="size-medium wp-image-1583 aligncenter" src="" alt="P1000231" width="300" height="225" /> <p style="text-align: center;">テキスト</p> </td> <td><img class="size-medium wp-image-1625 aligncenter" src="" alt="15" width="300" height="225" /> <p style="text-align: center;">テキスト</p> </td> </tr> </tbody> </table>

    • 締切済み
    • CSS
  • ホームページの画像が表示されない

    宜しくお願いします。 忍者ホームページの簡単ホームページでホームページを作りましたが画像が表示されず コメントだけの表示に成ります。 忍者ホームページにアップロードした画像ファイル名は一致しております 幾度試しましたが同じ状態です 下記のHTMLは間違って居りますでしょうか困って居ります <table align="right"> <tr><td><img src="img142.jpg"width="250" height="250"></td> <td><img src="img004.jpg"width="250" height="250"></td></tr> <tr align="center"><td bgcolor="#ffcccc">ハイブリットフリウス</td> <td bgcolor="#66cc66">フーガハイブリット</td></tr> <tr><td><img src="img013.jpg"width="250" height="250"></td> <td><img src="img889.jpg"width="250" height="250"></td></tr> <tr align="center"><td bgcolor="#cc9900">ポルシェカレラ</td> <td bgcolor="#9999cc">フェラリーモンディアル</td></tr> </table>

  • 同じ<table align="center">を用いていますが、セルの中身の行揃えが代わってしまいます。

    どちらも<table align="center">を用いています。 ですが、タグ1は特にセルの位置を指定せずとも、セルの中身が自動的に左詰めになりますが タグ2のセルの中身は、中央ぞろえになってしまいます。 タグ1のように、<table align="center">を用い、セルを左詰め指定(<align="left">)をせずとも なぜセルの中身が左詰めになるのか分かりません。。。 -------------タグ1------------- <table width="600" border="0" align="center" cellpadding="0" cellspacing="5"> <tr> <td width="10"><img src="img/concept_title.gif" width="10" height="30"></td> <td><img src="img/concept_title01.gif" alt="テキスト" width="127" height="16"></td> </tr> <tr> <td width="10">&nbsp;</td> <td class="t01">テキスト</td> </tr> </table> ------------------------------ -------------タグ2------------- <table width="640" border="0" align="center" cellpadding="0" cellspacing="0"> <tr> <td width="3" rowspan="2" valign="top"><img src="image/grade_line.gif" width="3" height="177" /></td> <td width="8" valign="bottom"><img src="image/grade_line30.gif" width="20" height="2" /></td> <td width="368"><img src="image/kisyo/01t.gif" width="368" height="32" /></td> <td align="left" valign="bottom"><img src="image/grade_line_right.gif" width="42" height="2" /></td> </tr> <tr> <td>&nbsp;</td> <td height="145" align="left">テキスト <td rowspan="2"><img src="image/kisyo/01_ph.jpg" alt="井戸" width="200" height="139" /></td> </tr> <tr> <td valign="top"><img src="image/grade_line_bottom02.gif" /></td> <td>&nbsp;</td> <td>&nbsp;</td> </tr> </table> ------------------------------ 初心者的な質問・タグで恐れ入りますが、ご助力頂けますと幸いです。 宜しくお願い致します。

    • ベストアンサー
    • HTML
  • width指定通り表示されない

    下記のようにヘッダー部分とデータ部分を指定した場合、widthで同じ数値を指定しても、ずれて表示されてしまいます。(IE8、IE9)width指定数値が無視されているように見えるのですが、IEの機能なのであればどのような仕様になっているのか教えてください。 また、widthで指定したとおりに表示させるにはどうしたらよいのか、教えていただきたいと思います。 よろしくお願いします。 ヘッダー部分 <table border="1" CELLSPACING="0" class="tableSearch2" style="cursor:'default';"> <tr class="tdListTitle">   <td align="center" width="<%=numwidth%>" rowspan="2">No.</td>   <td align="center" width="90" rowspan="2">L3種別</td>   <td align="center" width="100" rowspan="2">L4細目</td>   <td align="center" width="110" rowspan="2">協力会社</td>   <td align="center" width="80" rowspan="2">設計数量</td>   <td align="center" width="35" rowspan="2">単位</td>   <td align="center" width="80" rowspan="2" >単価</td>   <td align="center" colspan="3">当月(円)</td>   <td align="center" colspan="3">先月まで(円)</td>   <td align="center" colspan="3">累計(円)</td> </tr> <tr class="tdListTitle">   <td width="80" align="center">出来形数量</td>    <td width="90" align="center" >出来高</td>   <td width="40" align="center">%</td>   <td width="80" align="center">出来形数量</td>   <td width="90" align="center" >出来高</td>   <td width="40" align="center">%</td>   <td width="80" align="center">出来形数量</td>   <td width="90" align="center" >出来高</td>   <td width="40" align="center">%</td> </tr> </table> データ部分 <table border="1" class="tableSearch2"> Javaロジック <tr class="tdListText"> <td width="90" ><%=showLv3%></td> <td width="100" ><%=showLv4%></td> <td width="110"><%=showkrk%></td> <td width="80"><%=StringUtil.formatNum(info.getDsnsry())%></td> <td width="35;<%=info.getTnikgo()%></td> <td align="right" width="80"><%=StringUtil.formatNum(info.getSmktnk())%></td> <td align="right" width="80"><%=StringUtil.formatNum(info.getTmmdkgsry())%></td> <td align="right" width="90"><%=StringUtil.formatNum(info.getTmmdkdmny())%></td> <td align="right" width="40" ><%=showrtuT%></td> <td align="right" width="80"><%=StringUtil.formatNum(info.getZmmdkgsry())%></td> <td align="right" width="90"><%=StringUtil.formatNum(info.getZmmdkdmny())%></td> <td align="right" width="40" ><%=showrtuZ%></td> <td align="right" width="80"><%=StringUtil.formatNum(info.getRuidkgsry())%></td> <td align="right" width="90"><%=StringUtil.formatNum(info.getRuidkdmny())%></td> <td align="right" width="40"><%=showrtuR%></td> </tr> </table>

  • テーブルとテーブルの間に、隙間があいてしまいます。

    お世話になります。 表題のとおりです。 下記ソースのテーブル<!-- 丸枠 -->と<!-- ヘッダ -->間は、問題ないのですが テーブル<!-- ヘッダ -->と<!-- ロゴ -->の間に隙間が開いてしまいます。 1時間ほど考えましたが、どうにもこうにも理由が分かりません。 初心者的なソースで恐れ入りますが、詳しい方にご助力いただければ幸いです。 ---------------------------以下ソース-------------------------------------- <body> <!-- 背景白 --> <table border="1" cellpadding="0" cellspacing="0" class="table_white"> <tr> <td> <!-- 丸枠 --> <table width="820" border="0" cellspacing="0" cellpadding="0"> <tr> <td><img src="image/head.gif" width="820" height="9" /></td> </tr> </table> <!-- 丸枠ここまで --> </td> </tr> <tr> <td align="center"> <!-- ヘッダ --> <table width="730" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="324" height="15" align="left" > <strong class="seo01">ミ</strong></td> <td width="203">&nbsp;</td> <td width="5" align="center"><img src="image/spacer_glay.gif" width="1" height="10" /></td> <td width="42"><a href="kaisya.html" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('Image4','','image/head_kaisya_ov.gif',1)"><img src="image/head_kaisya.gif" alt="会社概要" width="42" height="11" border="0" id="Image4" /></a></td> <td width="5"><img src="image/spacer_glay.gif" width="1" height="10" /></td> <td width="61"><a href="toiawase.html" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('問い合わせ','','image/head_toiawase_ov.gif',1)"><img src="image/head_toiawase.gif" alt="お問い合わせ" width="61" height="11" border="0" id="問い合わせ" /></a></td> <td width="5"><img src="image/spacer_glay.gif" width="1" height="10" /></td> <td width="62"><a href="sitemap.html" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('sitemap','','image/head_sitemap_ov.gif',1)"><img src="image/head_sitemap.gif" alt="sitemap" width="62" height="11" border="0" id="sitemap" /></a></td> <td width="5"><img src="image/spacer_glay.gif" width="1" height="10" /></td> </tr> </table> <!-- ヘッダ ここまで--> </td></tr> <tr> <td align="center"> <table width="730" border="0" cellspacing="0" cellpadding="0"> <!-- ロゴ --> <tr>     <td colspan="13" align="left"><a href="http://www.com/"><img src="image/logo.gif" alt="ミ" width="92" height="48" border="0" ></a></td> </tr> <!-- ロゴ ここまで --> ---------------------------ソースここまで-------------------------------------- ---------------------------念のため使用CSS-------------------------------------- body { font-family: "MS P明朝", "細明朝体", "ヒラギノ明朝 Pro W3"; font-size: 12pt; font-weight: normal; color: #5c5c5c; background-color: #889fb6; margin-left: 30px; margin-top: 30px; letter-spacing: 2.5px; line-height: 18px; } .table_white { background-color: #FFFFFF; width: 820px; } .seo01 { font-size: x-small; letter-spacing: normal; font-weight: normal; } ---------------------------ここまで--------------------------------------

    • ベストアンサー
    • HTML
  • HTML テーブルに画像を貼り付けるときのサイズ

    ページいっぱいに広がるテーブルをひとつ用意し、 それを横に3等分して、それぞれのセルの下部に画像を表示しようと思いました。 しかし、表示してみると、テーブルは画面の横幅よりも広がってしまい、思うとおりに表示できません。 画像の代わりに文字を表示してみると、思った位置に表示できているのですが・・・。 画像を、画面の横幅を3等分したセルいっぱいに表示するにはどうしたらよいのでしょうか? 現在のソース: <TABLE WIDTH="100%" HEIGHT="100%">  <TR ALIGN="center" VALIGN="bottom">    <TD WIDTH="33%">     <IMG SRC="~~" WIDTH="100%">    </TD>    <TD WIDTH="33%">     <IMG SRC="~~" WIDTH="100%">    </TD>    <TD WIDTH="33%">     <IMG SRC="~~" WIDTH="100%">    </TD>   </TR> </TABLE>

専門家に質問してみよう