margin:0 auto;在不同场景下生效条件如下:
块级元素:给定要居中的块级元素的宽度。
行内元素:①设置display:block;②给定要居中的行内元素的宽度。(行内元素设置成块级元素后可以对其宽高进行设置)
行内块元素:设置display:block。(如input、button、img等元素,自带宽度可以不用设置其宽度)
注:
①所有元素也可以通过对父元素设置 text-align:center;的方式来实现居中。(而对于块元素来说,对要居中的元素自身进行设置text-align:center也能实现居中——而无需对其父元素进行设置)
②margin:0 auto;可以使盒子居中,text-align:center;可以使文本居中,故有时需要两者结合使用才能使得盒子及其中文本一起居中。