質問
tableでcolspanを使うと次行以下のセルの幅が均等に?
- 投稿日時:2008/02/28 20:08
tableでcolspanを使うと、colspanで結合した行の次行以下のセルの幅が均等になってしまいます。
どうすれば、colspanで結合した行の次行以下のセルの幅が均等になるのを防げるでしょうか?IE6,IE7
意図的にスタイルシートは、使用しないでください。
例:
<table width="300" border="1" cellspacing="1" cellpadding="5">
<tr>
<td colspan="2" width="284" align="center">
タイトルセル
</td>
</tr>
<tr align="left" valign="top">
<td width="100">
セル左
<td>
<td width="171">
セル右
<td>
</tr>
<table>
上記の場合、本来ならば、左のセルの幅(100px)が右のセルの幅(171px)より狭いはずなのに、左のセルの幅と右のセルの幅が均等になっていしまいます。
下記コード部分を上記のコードから削除すると、本来の比率で左のセルと右のセルの幅が表示されます。
<tr>
<td colspan="2" width="284" align="center">
タイトルセル
</td>
</tr>
よろしくお願いします。
回答 (4件)
- 最新から表示
- 回答順に表示
- ベストアンサーのみ表示
No.4ベストアンサー20pt
- 回答日時:2008/02/29 02:29
こんにちは
>実際に試していただいたのでしょうか?
はい。他の方はどうか分かりませんが僕はソース関係は簡単すぎるものや時間がなくて試せない場合を除いて全て試した上で回答させてもらっています
試していない場合には『動作未確認です』というコメントをつけています
><td>合計と<table>widthが少し違うので多少の微調整はあります
これは
<table border="1">
<td colspan="2" align="center">
としたものと比べていたので実際に計算してみたらあっています(--;)
この点はこちらの勘違いでしたのでお詫びしますm(--)m
均等になっていないという実証は
・td幅を(100,171)から(50,221)などに変えたり
・td幅を逆にしたもの(171,100)のものと並べてみたらよく分かると思います
この回答へのお礼
leap_dayさん
ご回答、ありがとうございました。
>tableのみを書かれたページを作り、表示確認されましたか?
tableのみのページを書いた場合、ちゃんと(均等にならずに)表示されました。スタイルシートが影響していたみたいです。
No.3ベストアンサー10pt
- 回答日時:2008/02/29 02:27
>実際に試していただいたのでしょうか?
ANo.1のお礼のコードで仮設置してみました。
http://shimix.s7.coreserver.jp/table.html
私の環境では均等には見えません。もし質問者さんの環境で「均等に見える」のであれば、OSやブラウザなどを書いてください。
この回答へのお礼
shimixさん
ご回答、ありがとうございました。
>tableのみを書かれたページを作り、表示確認されましたか?
tableのみのページを書いた場合、ちゃんと(均等にならずに)表示されました。スタイルシートが影響していたみたいです。
No.2
- 回答日時:2008/02/29 00:58
No.1へのお礼欄に書かれたものを試しましたが、均等にはなりませんでした。
質問者さんは、そのtableのみを書かれたページを作り、表示確認されましたか?
この回答へのお礼
goldfoxさん
ご回答、ありがとうございました。
>tableのみを書かれたページを作り、表示確認されましたか?
tableのみのページを書いた場合、ちゃんと(均等にならずに)表示されました。スタイルシートが影響していたみたいです。
No.1
- 回答日時:2008/02/28 20:35
こんにちは
<td>合計と<table>widthが少し違うので多少の微調整はありますが均等には特にならないと思いますが・・・・
<td width="100">
セル左
<td> ←</td>ではなく<td>になっている
<td width="171">
セル右
<td> ←</td>ではなく<td>になっている
が原因では?
この回答へのお礼
コードの最補正:
table width="300" border="1" cellspacing="1" cellpadding="5">の前に開始タグ「<」が抜けていました。
補正後:
<table width="300" border="1" cellspacing="1" cellpadding="5">
<tr>
<td colspan="2" width="284" align="center">
タイトルセル
</td>
</tr>
<tr align="left" valign="top">
<td width="100">
セル左
</td>
<td width="171">
セル右
</td>
</tr>
</table>
この回答への補足
leap_dayさん
ご回答、ありがとうございました。
><td>合計と<table>widthが少し違うので多少の微調整はありますが上記は、どういうことですか?
>均等には特にならないと思いますが・・・・
以下のように補正しましたが、私の環境ではセル左とセル右の幅が均等にはなります。実際に試していただいたのでしょうか?
table width="300" border="1" cellspacing="1" cellpadding="5">
<tr>
<td colspan="2" width="284" align="center">
タイトルセル
</td>
</tr>
<tr align="left" valign="top">
<td width="100">
セル左
</td>
<td width="171">
セル右
</td>
</tr>
</table>
よろしくお願いします。
注目の記事
『Evernote』と『秀丸』と『ひとりWiki』の連携で快適メモ生活!
非常に使い勝手のよい老舗のメモツール『秀丸』をエディターとして使いつつ、そのデータの保存は『Evernote』に、整形とアウトプットには『ひとりWiki』に任せてしまおうという設定をご紹介します。...
このカテゴリで人気のQ&Aランキング
- 4ホームページで画像を横に並べるには?
- 5<iframe>で読み込むページの高さを...
- 6DIVボックス内でのCSSを使用した縦...
- 7cssのdisplay:block
- 8HTMLでリンク先を新しいタブで開く...
- 9widthやheightの読み方
- 10ホームページにブログ更新情報(RSS...
- 11ホームページ作成の相場
- 12テーブルでセルの枠線を消す(CSS)
- 13HTMLコーディング作業とは?
- 14positionのrelativeとabsoluteについて
- 15リンクをクリックした時にformからP...
- 16liタグの中に<p>タグやら<dl>を入れ...
- 17HTMLでの全角スペース
- 18HTMLの改行コードが分かりません。
- 19form input テキストを上下中央に表...
- 20画像を複数横に並べ、かつそれぞれ...