--- title: vertical-align slug: Web/CSS/vertical-align tags: - CSS - CSS プロパティ - Reference translation_of: Web/CSS/vertical-align ---
vertical-align
は CSS のプロパティで、インラインボックス、インラインブロック、表セルボックスの垂直方向の配置を設定します。
vertical-align は、2 つの場面で使用することができます。
<p> top:<img style="vertical-align:top" src="https://mdn.mozillademos.org/files/15189/star.png"/> middle:<img style="vertical-align:middle" src="https://mdn.mozillademos.org/files/15189/star.png"/> bottom:<img style="vertical-align:bottom" src="https://mdn.mozillademos.org/files/15189/star.png"/> super:<img style="vertical-align:super" src="https://mdn.mozillademos.org/files/15189/star.png"/> sub:<img style="vertical-align:sub" src="https://mdn.mozillademos.org/files/15189/star.png"/> </p> <p> text-top:<img style="vertical-align:text-top" src="https://mdn.mozillademos.org/files/15189/star.png"/> text-bottom:<img style="vertical-align:text-bottom" src="https://mdn.mozillademos.org/files/15189/star.png"/> 0.2em:<img style="vertical-align:0.2em" src="https://mdn.mozillademos.org/files/15189/star.png"/> -1em:<img style="vertical-align:-1em" src="https://mdn.mozillademos.org/files/15189/star.png"/> 20%:<img style="vertical-align:20%" src="https://mdn.mozillademos.org/files/15189/star.png"/> -100%:<img style="vertical-align:-100%" src="https://mdn.mozillademos.org/files/15189/star.png"/> </p>
#* { box-sizing: border-box; } img { margin-right: 0.5em; } p { height: 3em; padding: 0 .5em; font-family: monospace; text-decoration: underline overline; margin-left: auto; margin-right: auto; width: 80%; }
{{EmbedLiveSample("vertical-align-inline", 1200, 120, "", "", "example-outcome-frame")}}
<table> <tr> <td style="vertical-align: baseline">baseline</td> <td style="vertical-align: top">top</td> <td style="vertical-align: middle">middle</td> <td style="vertical-align: bottom">bottom</td> <td> <p>There is a theory which states that if ever anyone discovers exactly what the Universe is for and why it is here, it will instantly disappear and be replaced by something even more bizarre and inexplicable.</p> <p>There is another theory which states that this has already happened.</p> </td> </tr> </table>
table { margin-left: auto; margin-right: auto; width: 80%; } table, th, td { border: 1px solid black; } td { padding: 0.5em; font-family: monospace; }
{{EmbedLiveSample("vertical-align-table", 1200, 210, "", "", "example-outcome-frame")}}
vertical-align
はインライン要素、インラインブロック要素、表セル要素だけに適用できることに注意してください。つまり、ブロックレベル要素の縦方向の整列には使えないのです。
/* キーワード値 */ vertical-align: baseline; vertical-align: sub; vertical-align: super; vertical-align: text-top; vertical-align: text-bottom; vertical-align: middle; vertical-align: top; vertical-align: bottom; /* <length> 値 */ vertical-align: 10em; vertical-align: 4px; /* <percentage> 値 */ vertical-align: 20%; /* グローバル値 */ vertical-align: inherit; vertical-align: initial; vertical-align: unset;
vertical-align
プロパティは、以下の値のうち一つで指定します。
以下の値は、親要素に対しての縦方向の整列方法を表します。
baseline
sub
super
text-top
text-bottom
middle
baseline + x-height の半分
に揃えます。以下の値は、親要素ではなく、行全体に対しての縦方向の整列方法を表します。
top
bottom
ベースラインを持たない要素では、代わりにマージン境界の下端が使われます。
baseline
(および sub
, super
, text-top
, text-bottom
, <length>
, <percentage>
)top
middle
bottom
負の値を使用することができます。
{{CSSInfo}}
{{csssyntax}}
<div>An <img src="https://mdn.mozillademos.org/files/12245/frame_image.svg" alt="link" width="32" height="32" /> image with a default alignment.</div> <div>An <img class="top" src="https://mdn.mozillademos.org/files/12245/frame_image.svg" alt="link" width="32" height="32" /> image with a text-top alignment.</div> <div>An <img class="bottom" src="https://mdn.mozillademos.org/files/12245/frame_image.svg" alt="link" width="32" height="32" /> image with a text-bottom alignment.</div> <div>An <img class="middle" src="https://mdn.mozillademos.org/files/12245/frame_image.svg" alt="link" width="32" height="32" /> image with a middle alignment.</div>
img.top { vertical-align: text-top; } img.bottom { vertical-align: text-bottom; } img.middle { vertical-align: middle; }
{{EmbedLiveSample("Basic_example")}}
仕様書 | 状態 | 備考 |
---|---|---|
{{SpecName('CSS2.1', 'visudet.html#propdef-vertical-align', 'vertical-align')}} | {{Spec2('CSS2.1')}} | {{cssxref("<length>")}} 値を追加し、 {{cssxref("display")}} が table-cell である要素で使えるようにした。 |
{{SpecName('CSS1', '#vertical-align', 'vertical-align')}} | {{Spec2('CSS1')}} | 初回定義 |
{{Compat("css.properties.vertical-align")}}
vertical-align
, or "How (Not) To Vertically Center Content"