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

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

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

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

Q&A

解決済

5回答

445閲覧

tdタグにおいてvartical-align:bottomやvalign="bottom"が効かない

pegy

総合スコア243

CSS

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

0グッド

0クリップ

投稿2018/07/24 01:50

編集2018/07/24 02:14

下記のようなテーブルのセル内のテキストを下辺(bottom)に設定したいのですが
スタイルでvartical-align:bottom;を設定してもインラインでvalign="bottom"属性を設置しても
効きません。同じような問題が頻繁にあるようでgoogleで調べてみたのですがdisplayでinline要素に設定する
等を試したのですが、効果は得られませんでした。

コメントでご指摘の通りtdの高さを変更した場合、bottomよりであることは確認できたのですが、
bottomラインでより近い位置にテキストを配置したいのですがアドバイスを頂けますでしょうか?
現状は下記のJSFiddleに提示していますとおり、border-bottomからテキストとの距離があり、
padding-bottomを0にしても距離が埋まりません。(padding-bottomのマイナス値はinvalidでした)

原因と解決方法についてアドバイスを頂けますでしょうか。

ブラウザ:Google Chrome
バージョン: 67.0.3396.99(Official Build) (64 ビット

JSFiddle

html

1 <div class="main_wrapper"> 2 <div class="kpi_1"> 3 <table class="main_table"> 4 <tr class="single_tr"><td class="single_td">AAAA</td></tr> 5 <tr class="single_tr"><td class="single_td">BBBB</td></tr> 6 <tr class="single_tr"><td class="single_td">CCCC</td></tr> 7 <tr class="single_tr"><td class="single_td">DDDD</td></tr> 8 <tr class="single_tr"><td class="single_td">EEEE</td></tr> 9 <tr class="single_tr"><td class="single_td">FFFF</td></tr> 10 <tr class="single_tr"><td class="single_td">GGGG</td></tr> 11 </table> 12 </div> 13 </div>

css

1.model_sidebar{ 2height:300px!important; 3} 4 5.main_wrapper{ 6display:flex; 7position:relative; 8top:125px; 9padding-top:20px; 10padding-left:20px; 11} 12 13.single_tr{ 14 border-bottom:1px #888888 solid; 15} 16.single_td{ 17 padding-left: 3px; 18 padding-right: 3px; 19 vertical-align:bottom;//here 20 21} 22.main_table{ 23 border-collapse:collapse; 24 font-size: 12px; 25 }

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

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

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

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

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

dit.

2018/07/24 02:01 編集

vertical-align:bottom;は効いていると思います。tableやtdのheightを高くして、tdにborderでも入れてみるとわかります。「現状どうなっていて、どの部分が理想と違うのか」を図説できればきちんとした回答が付くかもしれません。質問には画像を載せることができます。
m.ts10806

2018/07/24 02:00

現象確認されたブラウザとバージョンも記載してください。
pegy

2018/07/24 02:09

コメント有難うございます。加筆させていただきました。
pegy

2018/07/24 02:14

dit様もコメントありがとうございます。アドバイスをもとに質問記載事項を修正させて頂きました。
guest

回答5

0

ベストアンサー

tdにつけた下線とテキストの間の余白は、line-heightによるものなので、
tdのpaddingを0にした上で更にline-heightを1(=文字の高さと同じ)にすれば
かなり近づけることができると思います。
ただし、表示するフォントの種類によっては文字周りにわずかな余白をもたせたフォントデザインが
なされているため、おそらくそれでも下線にピッタリくっつけることはできないと思います。

tdにつけた下線に被るような形でピッタリ文字をくっつけたいなら、
td内のテキストをspan要素などで囲んで、その要素にposition: relative; bottom: -●px;
のように下方向に任意のサイズ分だけオフセットさせると良いかと思います。

投稿2018/07/24 03:21

aKusano

総合スコア3763

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

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

pegy

2018/07/24 04:00

aKusano様 ご回答、有難うございます。 ご教示頂いた方法で解決いたしました。 大変勉強になりました。
guest

0

なるべく下の線に近づけたいということですかね?
.single_tdline-height:1;を入れるだけでもある程度いけるとは思いますが、line-heightを変更するとマズい場合はこれだと対応できないですね…。

投稿2018/07/24 02:34

dit.

総合スコア3235

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

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

pegy

2018/07/24 04:01

dit様 ご回答有難うございます。一旦はline-heightを設定することで解決しました。 他への影響が生じた場合に改めて検討いたします。 宜しくお願い申し上げます。
guest

0

例えば、span等で囲ってしまえば微調整もできます。

HTML

1<tr class="single_tr"><td class="single_td"><span>AAAA</span></td></tr>

CSS

1 span { 2 display: block; 3 margin-bottom:-5px; 4 }

投稿2018/07/24 04:06

Atsushi_Okumura

総合スコア355

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

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

Atsushi_Okumura

2018/07/24 04:08

すでにaKusanoさんが回答されていましたね・・失礼しました。
pegy

2018/07/24 05:39

いえ、コメントを頂き、有難うございます! 動作も確認してみました。
guest

0

position: relativetdの相対座標をずらすことができます。

JSFiddle

position: relative; bottom: -5px;

投稿2018/07/24 02:30

horse_n_deer

総合スコア452

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

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

pegy

2018/07/24 04:03

horse_n_deer様 positionでずらしてしまうという手もあるのですね。実際に動作も確認できました。他の要素への影響があるため、採用は難しいのですがその様な方法もあることについて大変勉強になりました。
guest

0

効いてますね

.single_tdに「padding-bottom: 0px;line-height:1em;height:1.5em;」を付加してみてください

投稿2018/07/24 02:26

yambejp

総合スコア114784

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

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

pegy

2018/07/24 04:06

yambejp様 いつもご回答有難うございます。 line-heightを設定すると本来の要素の高さが失われてしまう?ので別途heightを設定しなければならないのか、ここら辺の関係をもう少し調べてみようと思います。 有難うございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問