• ベストアンサー

同じCSS定義なのに行の高さが異なる

右側の表と左側の表で、同じCSSを使い、行の高さ25に指定しているにもかかわらず、 行の高さが異なり、下に行くほどずれてきてしまいます。 一致させるにはどのようにしたらよいのでしょうか。 よろしくお願いします。

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

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

セルは内容のサイズによって変化します。でないと、小さなウィンドウで見るときはセルの内容が折り返されて高くなりますからね。  同様に、borderがある<input要素は、そのサイズはボーダー辺の内側です。 ボックスモデル ( http://www.swlab.it.okayama-u.ac.jp/man/rec-css2/box.html#box-dimensions ) 視覚整形モデル詳細 ( http://www.swlab.it.okayama-u.ac.jp/man/rec-css2/visudet.html )  tableを分けるのではなく、一つの行に収めるべきです。tableは、そうしたものです。 Tables in HTML documents (ja) ( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/struct/tables.html#h-11.2.5 ) <table summary="List">  <colgroup span="5">  <colgroup span="4">  <thead>   <tr>    <th abbr="check">レ</th>    <th abbr="資源">L5資源名称</th>    <th abbr="単位">単位</th>    <th abbr="数量単価">投入数量/単価</th>    <th abbr="18">18</th>    <th abbr="19">19</th>    <th abbr="20">20</th>   </tr>  </thead>  <tbody>   <td rowspan="2"><input type="checkbox"></td>   <td rowspan="2">1</td>   <td rowspan="2">0.7m<sup>3</sup>バツクホウ</td>   <td rowspan="2">台</td>   <td>0.80</td>   <td><input type="text" name="aaa" size="10"></td>   <td><input type="text" name="aaa" size="10"></td>   <td><input type="text" name="aaa" size="10"></td>  </tbody> </table>

Horirin39
質問者

お礼

お礼が遅くなりました。 丁寧な説明で、よく分かりました。 ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • t_ohta
  • ベストアンサー率38% (5106/13339)
回答No.1

中に表示しているものの高さも合わせましょう。 右側はinputタグが使われているように見えます。 この場合、文字の高さ+テキストボックスの枠の高さが中身の高さになり、セルの高さ25pxより中身が大きければセルの高さは大きい方に合わされてしまいます。

Horirin39
質問者

お礼

お礼が遅くなりました。 ずれた理由がわかりました。ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • CSSでの表の作成について

    CSSでの表の作成方法を教えてください。 table要素使わずCSSのみで表の作成は可能でしょうか? 作成したい表は 2列10行の表で、列幅は それぞれ違った幅を指定、行の高さも それぞれの行によって 高さを変えたいと思っています。 背景色の指定、ボーダーの指定もしたいです。 table要素使わずCSSのみで表を作成するには、どうしたらいいのか教えてください。 初心者なので、CSSの内容とHTMLの内容(ソース)を書いたものがあると助かります。 どうかよろしくお願いします。

  • エクセル・一部分のみ行高さ変更

    例えば、左と右にA4それぞれ表があり(全体的にはA3サイズ)、左側の表の行の高さと右側の表の行の高さを同じにしたくないのです・・・・。右側だけ行の高さを低くする事はできますか? 宜しくお願いします。

  • CSSのfloatについて

    ホームページを作成していて、CSSが効かなくて困っています。 2カラムで左側にメニュー 右側にメインのコンテンツを作成しております。 メインのコンテンツは floatでrightに設定していて その中にさらに 2つの内容を入れようと (メインコンテンツ内に左側に画像で右側に画像の詳細をいれたい) floatタグでleftとrightに設定したのですが CSSが効かなくて 左側に画像が配置され その下に画像の詳細文が配置されてしまい 全部左側に配置されてしまいました。 色々と試したみたのですが やっぱりCSSが効きませんでした。 すいません誰かお分かりになられましたら 教えてください。宜しくお願い致します。

  • このテーブルをCSSで書くとどうなりますか?

    画像を参照願えますでしょうか。 左側100pxの右側は400pxで合計幅500pxあります。 (右側1行左側3行です。) これをテーブルレイアウトではなく、divとcssで書くとどんなhtmlになりますか? 現在段組を色々やってますが、自問自答してもこのパターンだけが解決できないので・・・ 同じようにHTMLに興味ある方や詳しい方がいらっしゃいましたらご教授願います。 お答えの際にはHTMLソースを希望します。

    • ベストアンサー
    • HTML
  • CSSについて教えてください

    CSSについて教えてください。二段組のボックスにおいて、左側が固定している場合、右側のボックスはfloat:right;にしてもfloat:left,にしてもどちらでも問題ないですか(左右の幅をきっちりとった場合)???ボックスを右寄せに指定しても、左寄せに指定しても・・・同じ幅であれば同じポジションになるはずですよね?

  • html・CSSの行揃えについて質問です。

    現在、教則本を見ながらhtml・CSSについて勉強しています。 (まだ勉強を始めて3日の、ど初心者です…) 「adress部分を行揃えを右に指定して、上に線を引く」という部分があって 以下のように打ち込んで、最初はきちんと右側に寄って線も引かれたのですが 他の要素を作成していたら、いつのまにか線は消えてしまい、行も左に寄ってしまいました。 [ CSS ] address{ font-size:85%; font-style:normal;  text-align:right;  border-top:1px solid #000000; padding-top:10px; margin-top:10px; clear:left; } どこが間違っているのか自力では発見できず、困っています。 過去の質問も見ましたが、なんせ初心者でちんぷんかんぷんでした… 申し訳ありませんが、わかる方がいらっしゃいましたら教えてください。 宜しくお願い致します。

    • ベストアンサー
    • HTML
  • CSSによるリキッドレイアウトについて

    Yahooの検索結果の画面は、左側がリキッドで右側のPR部分は固定幅になっています。 どういうCSSなのか見てみたら、左側の検索結果リスト部分のdiv(id="yschres")には #yschres{ width:100%; width:expression((document.all('yschft') )?document.all('yschft').offsetWidth:'100%'); } /* IE: min-width */ と指定してありました。 さて、サッパリわかりません。 このCSSの意味をご教授いただきたいと思います。 ちなみに、右側のPR部分のdiv(#yschec)には #yschec { width:220px; float:right; margin:0; padding:0;} というCSSが指定してありました。

    • ベストアンサー
    • HTML
  • css定義でこんなものを…

    Dreamweaver2004MX 添付画像のようなレイアウトをcssで定義してみたいのですが、 可能でしょうか? css関連のサイトを色々と検索し、やってみましたが、 css初心者としては、難しくて満足のいくものが出来ませんでした。 宜しくお願いします…。 ※添付画像の「画像」とその下にある「SAMPLE」が途中で 切れてしまってますが作成したいものは、つながっています。 わかりずらくて申し訳御座いません。

    • ベストアンサー
    • HTML
  • エクセルの行と列

    いつの日からか、私のエクセルを新規作成で立ち上げたときに、行と列のタブがプログラムの右側に表れてしまいます。 分かりにくいかもしれませんが、プログラムの右側から左側にかけて、ABCDと、プログラムの右側に上から下に12345と… これはどうしたものなのでしょうか? 左利き用の設定って言えば分かりやすいのかもしれませんか、治す方法をご存知の方教えてください。

  • シェルスクリプトで、テキストファイルから最長致行を探し出したいのですが

    UNIXのシェルスクリプトで、以下のようなことをしたいです。 あるテキストファイルがあって、以下のような感じになっています。 /A/BB/C 8 /A/BB/F 80 /A/BB/CC 9 /M/NN 4 /TT/UUU 17 /A/B/G/H 0 /A/BB/C/RR 3 上記のような感じに、各行が1つのタブで左右に分かれていて、 右側には数があり、左側はスラッシュを含む文字列があります。(スラッシュが連続することはありません。) /A/BB/C/HH/JJJJ/KK のような、これまたスラッシュを含む文字列(★)を指定して、 上記のテキストファイルから、左側の文字列が以下のような行を見つけ、 その(右側の)数を知りたいのです。 「文字列(★)と比較して、先頭側が一致する。 もし、そのような文字列が複数あるときは、もっとも長く一致するもの。」 例えば、上の例の場合は、 ~~~~~~~~~ "A"が共通な行・・・1行目、2行目、3行目、6行目、7行目 "BB"も行通な行・・・1行目、2行目、3行目、7行目 "C"も共通な行・・・1行目、7行目 7行目は"RR"という余計なのが付いているから、ダメ ~~~~~~~~~ というような感じに、左から見ていって、最も長く一致するものを見つけます。 そして、1行目の右側の数は8なので、8が知りたい数です。 一致するかどうかは、スラッシュで区切られた単位で判断します。 3行目のような"CC"は、"C"とは、一致しないとすることにします。 質問は、上記のようなことをするには、繰り返しが避けられないか、つまり トライしてその結果が複数かを判断すること を繰り返して行わなければならないか、です。 もし、繰り返さずにいっぺんにできることができるなら、そのやり方をお教えください。