[CSS]横並びボックスのテキストを上下中央に揃える方法

CSSを使って横並びレイアウト

CSSを使って、横一列に並んだブロックのテキストを上下中央に揃えてレイアウトしたい場面ってありませんか?

同じ文字数(行数)で揃っていれば特に問題ないのですが、1行だったり2行だったりバラバラのときに高さが揃わないとなんだかデザイン的にも気持ち悪いです。

Bootstrapのcol-*とかを使っていて、このやり方がいつもわからなくなるので。

HTML

 

 

 

目次

テキストテキストテキストテキストテキスト

 

 

 

テキストテキストテキスト

 

 

 

テキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキスト

 

 

 

CSS

h2{
	display:table;
	min-height:4em;
}
span{
	display:table-cell;
	vertical-align:middle;
	text-align: center;
}

簡単ですね。

親要素にdisplay:table、heightで高さ指定、子要素にdisplay:table-cellとvertical-align:middleでいけます。

デモはこちら

この本はとても読みやすく重宝しています。紙の本とKindleに入れて読んでます。
[amazonjs asin=”B00M0ESXUI” locale=”JP” title=”Web制作者のためのCSS設計の教科書 モダンWeb開発に欠かせない「修正しやすいCSS」の設計手法”]

シェアよろしくお願いします
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

山田 浩太のアバター 山田 浩太 起業家・政治家

旅人を卒業し、2022年島根県の離島に移住した後政治活動を始めました。
===============
1984年7月 福岡県福岡市生まれ
SPOT LIGHTS 代表
一般社団法人アナザーステージ 理事
隠岐の島町議会議員

コメント

コメントする

目次