CSSの中央問題

1432 ワード

CSSが中央に位置するのは主に2種類に分けられる
  • 水平中央(水平中央は行内要素中央と塊状要素中央と定幅要素中央に分かれる)
  • 垂直中央
  • 一、水平中央
  • 行内エレメント中央text-align:center; ps:行内エレメントまたはブロックエレメントに適用するdisplayがinlineに設定されたエレメントは、親エレメントにtext-align:center;を加えることができるが、子エレメントがfloatの影響を受けるエレメントは
  • を使用できない.
  • ブロック要素中央定幅:margin:0 auto;不定幅:方法1:display:table;margin:0 auto;方法2:ブロックレベル要素のdisplayをinlineタイプ(行内要素表示に設定)に変更し、text-align:centerを使用して中央効果を実現します.方法3:親要素にfloatを設定し、親要素にposition:relativeおよびleft:50%を設定し、子要素にposition:relativeおよびleft: -50%を設定することによって、水平中央
  • を実現する.
    二、垂直中央
  • 親要素の高さが決定する単行テキストの垂直中央に親要素のheightとline-heightを常に垂直中央height:60px;line-height:60px;
  • を実現するように設定する.
  • 親要素の高さを決定する複数行のテキストを垂直に中央に配置する方法1:親要素display:table; vertical-align:middle;
    display:table-cell;            /*IE8   Chrome、Firefox*/
    vertical-align:middle;        /*IE8   Chrome、Firefox*/ 
    
    を設定する方法2:絶対的な位置決めを通じて:まず親要素にpositon:relativeを書いて、このようにするのは子要素にposition:absoluteを打ったときに外宇宙に位置決めされないためです.次に、サブエレメントのheightとwidthを書きます.これは必須のようですが、一部のブラウザでは解析時にこの2つの値がなければ予想外のずれが発生します.次に、方法全体の核心であり、サブ要素にtop:50%;left:50%およびmargin-top:半分`のheight値の負の数を与える.margin-left:weight値の半分の負の数.
  • {
    width:100px;
    height:80px;
    position:absolute;
    top:50%;
    left:50%;
    margin-left:50px;
    margin-top:40px
    }