質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.49%
CSS3

CSS(Cascading Style Sheet)の第3版です。CSS3と略されることが多いです。色やデザインを柔軟に変更することが可能になります。

デザイン

プログラミングでのデザインとは、プログラムの構成や、使用の信頼性・持続性・正確性・利便性の目標達成にはどうするのがベストなのか特定の選択を行うことです。

Bootstrap

BootstrapはウェブサイトデザインやUIのWebアプリケーションを素早く 作成する可能なCSSフレームワークです。 Twitter風のデザインを作成することができます。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

1回答

6262閲覧

bootstrap4で生成したtableの縦幅を固定したい(table内に設置している要素の縦幅によらず)

carotene4035

総合スコア31

CSS3

CSS(Cascading Style Sheet)の第3版です。CSS3と略されることが多いです。色やデザインを柔軟に変更することが可能になります。

デザイン

プログラミングでのデザインとは、プログラムの構成や、使用の信頼性・持続性・正確性・利便性の目標達成にはどうするのがベストなのか特定の選択を行うことです。

Bootstrap

BootstrapはウェブサイトデザインやUIのWebアプリケーションを素早く 作成する可能なCSSフレームワークです。 Twitter風のデザインを作成することができます。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

0クリップ

投稿2018/06/11 05:57

前提・実現したいこと

table内に設置している要素の縦幅が変わったときでも、

tableの縦幅を固定したい。

(bootstrap 4系を使用しております)

発生している問題・エラーメッセージ

中のコンテンツの縦幅が変わると、tableの縦幅が変わってしまう。

イメージ説明

中の猫の画像の縦幅が、400px。

この時tableの縦幅が424.44px。

なのですが、

猫の画像が増え、画像の縦幅が縮小した時、

イメージ説明

中の猫の画像の縦幅が、237px。

この時tableの縦幅が462.22pxとなり、

縦幅が小さくなってしまいます。

※ 中のコンテンツの大きさが変わるのは、

imgに対してbootstrapのimg-fluidというクラスを付与し、

レスポンシブ対応しているからです。

(要件にレスポンシブ対応が必須なのでつけています)

該当のソースコード

codepenにおきました。

codepen

内容は以下のとおりです。

html

1 <table class='table table-bordered'> 2 <thead> 3 <tr> 4 <th> 5 <img src="https://pbs.twimg.com/profile_images/3406268893/54b7e1f981b7df7c817af48d1b96ad5e_400x400.jpeg" alt="" class='img-fluid'> 6 </th> 7 <th> 8 <img src="https://pbs.twimg.com/profile_images/3406268893/54b7e1f981b7df7c817af48d1b96ad5e_400x400.jpeg" alt="" class='img-fluid'> 9 </th> 10 <th> 11 <img src="https://pbs.twimg.com/profile_images/3406268893/54b7e1f981b7df7c817af48d1b96ad5e_400x400.jpeg" alt="" class='img-fluid'> 12 </th> 13 </tr> 14 </thead> 15 </table>

試したこと

  • tableタグに縦幅を指定。

html

1<table class='table table-bordered' style='height: 100px'> 2

だめでした。

  • theadタグに縦幅を指定

html

1 <thead style='height: 100px'>
  • tr, thタグに縦幅を指定。

html

1 <tr style='height: 100px'>

html

1 <th style='height: 100px'>

こちらもだめでした。

どうしたらtableの縦幅が固定されるのか、検討がつかなくなってまいりましたので、

教えていただけると助かります。

どうぞよろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

tableのセル(th, td)にはheight, min-height, max-height等が効きませんので、セルの内容を div でラッピングする必要があります。

HTML

1(略) 2 <th> 3 <div class="neko"> 4 <img ....> 5 </div> 6 </th> 7(以降のthでも同様にラッピング)

css

1.neko { 2 min-height: 400px; 3}

これで、画像が小さくなった時でも常に最大の縦幅が適用されます。画像の上下に余分な隙間ができます。
ご参考になれば。

投稿2018/06/11 06:22

tkanda

総合スコア2425

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

efcode

2018/06/27 03:35

min-heightでなくmax-heightじゃないかな 質問者さん、この方の回答がどう動かないのかどう意図しないかのコメントを付けた方が、前へ進める可能性が高くなると思いますよ、divを入れられない、入れたくないのであれば他のアプローチになりますし
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.49%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問