上下中央、左右中央にするためのCSS
左右中央に配置するのは難しくないけれど、慣れるまでちょっと頭を悩ませるのが「上下中央の配置」

と感じたら、ポイントを押さえて問題をクリアしちゃいましょう。
- 左右中央に配置する
- 上下中央に配置する
左右中央に配置するのは難しくないけれど、慣れるまでちょっと頭を悩ませるのが「上下中央の配置」

と感じたら、ポイントを押さえて問題をクリアしちゃいましょう。
この記事は「2021年01月20日」に書かれた記事です
まずは、左右中央配置から見てきたいと思います。
テキストを中央配置にする最もシンプルな方法は、text-align: center; です。
この文章を中央に配置する
HTML
<p class="text-center">この文章を中央に配置する</p>
CSS
p.text-center {
text-align: center;
}
HTML
<p class="text-center"><a href="#">インライン要素の中央配置</a></p>
CSS
p.text-center {
text-align: center;
}
例:aタグ
HTML
<a href="#">インライン要素の中央配置</a>
CSS
a {
display: block;
width:240px;
margin:0 auto;
}
aタグの幅を決め、display:blockを設定します。
あとはmargin:0 autoを設定すれば中央配置になります。
divの領域がわかりやすいよう背景色に白色を設定しています。
HTML
<div>この領域を左右中央に配置</div>
CSS
div {
width: 240px;
margin: 0 auto;
}
幅を決めると領域が文字スペースよりも大きいことがほとんどかと思います。その場合、上記のようにずれてみえてしまうため、text-align:centerを設定して文字を中央に配置しておくとよいでしょう。
divの領域がわかりやすいよう背景色に白色を設定しています。
HTML
<div class="text-center"> <div class="box">この領域を左右中央に配置</div> </div>
CSS
.text-center {
text-align:center;
}
.box {
display: inline-block;
margin: 0 auto;
background-color: #FFF;
}
HTML
<div class="box1"> <div class="box2">ここを左右中央に</div> </div>
CSS
.box1 {
display: flex;
}
.box2 {
margin: 0 auto;
}
※positonを使った左右中央配置は、「4-19 要素を上下左右 中央にするためのCSSってどれを使えばいいの?!(近日公開予定)」をご覧ください。
HTML
<div class="box1"> <div class="box2"><strong>この文章を上下中央(縦中央)に。</strong></div> </div>
CSS
.box1 {
display:table;
width: 100%;
height: 100px;
}
.box2 {
display:table-cell;
vertical-align:middle;
background-color: #FFF;
}
テーブルのセルでは縦幅可変しても上下中央ができるように、display:table と display:table-cell を設定し仮想tableを実現することで、高さに依存することなく上下中央配置できます。
※samp-center-tableの高さは表示確認のために入れています。
HTML
<div class="box1"> <div class="box2"><strong>この文章を縦中央に。</strong></div> </div>
CSS
.box1 {
height:100px;
background-color: #FFF;
}
.box2 {
content: "";
display:inline-block;
height: 100%;
vertical-align:middle;
}
.samp-center-block-txt {
display:inline-block;
vertical-align:middle;
}
※inline-block 要素が横並びになると予期せぬ隙間ができてしまいます。上記の設定では回避していませんが、回避する方法は「cssの設定でできる隙間のあれこれ(近日公開予定)で掲載予定です。
※positonを使った上下中央(縦中央)配置は、「4-19 要素を上下左右 中央にするためのCSSってどれを使えばいいの?!(近日公開予定)」をご覧ください。
HOME > ホームページ制作 > CSSでホームページを1UP > 上下中央、左右中央にするためのCSS