インライン要素とブロック要素
インライン要素とブロック要素
●インライン要素
span | a | strong |
b | font | img |
small | input | br |
textarea | u | button |
label | script |
※他にもインライン要素はあり一部のみ記載
〇text-align: center; 〇vertical-align:center
・特徴
・要素の前後に改行が入らず、インライン要素同士横に並ぶ
・横幅や高さを指定できない(※1)
・ブロックレベル要素のように上下の余白設定(margin,padding)が効かない(※2)
(※1)img、input、textareaなどの一部のタグは幅高さや余白の設定が可能です。
(※2)余白について厳密にいうと外部余白marginについては上下は効きません(左右は効きます)
内部余白paddingについては上下左右設定できますがブロックレベル要素のように正しく余白が取れません。
●ブロック要素
div | p | ul |
li | ol | table |
header | main | footer |
section | form | h1-h6 |
※他にもインライン要素はあり一部のみ記載
×text-align: center; 〇margin: 0 auto; margin-right: auto; margin-left: auto;
横並びの要素を基準にするならば、インライン要素やインラインブロック要素にして、vertical-align:centerでOKです。
親要素を基準に中央寄せしたい場合は、親要素に高さ、display: table-cell、vertical-align:centerを指定します。
・特徴
・要素の前後に改行が入り、ブロック要素同士縦に並ぶ
・横幅や高さを指定できる
・余白(margin,padding)が指定できる
●インラインブロック要素
〇text-align:center
上下中央揃えでも、インライン要素と同じ考え方で問題ありません。
横並び基準ならvertical-align:center、
親要素基準なら親要素に高さ、display:table-cell、vertical-align:centerを指定。
問題点
・text-align:centerが効かない
ブロック要素になっていませんか?
親要素に対して指定していますか?
・margin: 0 autoが効かない
インライン要素になっていませんか?
親要素の幅が小さくなっていませんか?
・position: absoluteができない
親要素はrelativeになっていますか?
Author And Source
この問題について(インライン要素とブロック要素), 我々は、より多くの情報をここで見つけました https://qiita.com/masaki1117/items/266bd9ce4d6daa912023著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .