因为“text-align:center”控制的是文本居中,div居中可以用外边距margin来实现。
1、新建html文件,在body标签中添加div标签,div标签中的内容为“演示文本”,添加题目中的css样式,为了方便演示,给div标签添加灰色背景,这时可以发现div靠近浏览器的左侧,文字在div中居中:
2、为div标签添加新的外边距“margin”属性,属性值为“0 auto”,“0”指的是上下外边距为0,“auto”指的是左右外边距为自适应:
3、这时无论浏览器的宽度是多少,div都会在浏览器上水平居中:
通过设置display样式为table-cell。
1、定义div的css
<style>div{
display:table-cell
}
</style>
2、定义水平div
<body><div>1</div><div>2</div><div>3</div>
</body>
补充:
display:table-cell属性指让标签元素以表格单元格的形式呈现,类似于td标签。目前IE8+以及其他现代浏览器都是支持此属性。
用CSS弹性盒子模型,可以做到让子元素水平和垂直居中!看下面加粗的代码:
div.container {
background-color:yellow
height: 200px
width: 500px
display: flex
flex-direction:column
justify-content:center
align-items: center
}
效果图:
一个DIV下面有3个子DIV元素