HTML居中对齐与垂直居中
一、设置子div水平对齐首先要有个父容器设置为text-align:center; 其次它的子div的margin的左右边距一定要设置为auto,上下边距不做要求要指定子div的宽度与高度。 二、设置元素垂直居中1.本人比较推荐使用弹性盒子,主要是现在一般浏览器都支持,可以自动调节将父容器加上display:flex; flex-direction:column; j...
·
一、设置子div水平对齐
- 首先要有个父容器设置为text-align:center; 其次它的子div的margin的左右边距一定要设置为auto,上下边距不做要求
- 要指定子div的宽度与高度。
二、设置元素垂直居中
1.本人比较推荐使用弹性盒子,主要是现在一般浏览器都支持,可以自动调节
将父容器加上display:flex; flex-direction:column; justify-content:space-around; items-align:center;这4段css代码意思是子元素垂直排列根据子元素的个数将 子元素 从上到下排满父容器 间距 自动调节;
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>无标题文档</title>
<style type="text/css">
body{
text-align:center;
}
.div1{
width:700px;
height:150px;
margin:auto;
display:flex;
flex-direction:column;
justify-content:space-around;
items-align:center;
}
.Red{
background-color:red;
}
.Blue{
background-color:blue;
}
</style>
</head>
<body>
<div class="div1 Red"><p>自动划分1</p></div>
<div class="div1 Blue">
<p>自动划分1</p>
<p>自动划分2</p>
<p>自动划分3</p>
</div>
</body>
</html>
如果将flex-direction:column;改成flex-direction:row;则水平排列
2.设置display为table-cell布局 对齐垂直居中vertical-align:middle;
3.设置子元素行高等于父元素高度
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>css居中对齐</title>
<style type="text/css">
body{
text-align:center;
}
.backRed{
background-color: red;
}
.backBlue{
background-color:blue;
}
.backGreen{
background-color:green;
}
.div1{
width:700px;
height:150px;
margin:auto;
display:flex;
flex-direction:column;
justify-content:space-around;
items-align:center;
}
.div2{
width:700px;
height:150px;
margin:auto;
display:table-cell;
vertical-align:middle;
}
.div3{
width:700px;
height:150px;
margin:auto;
line-height: 150px;
}
.div3 h1{
margin: 0 auto;
}
.div4{
width:700px;
height:150px;
background-color:#0C9;
margin:0 auto;
}
</style>
</head>
<body>
<div class="div1 backBlue"><h1>弹性盒子</h1>
<!--样式直接作用于其子元素-->
</div>
<div class="div1 backRed"><p><a href="#">test20</a> <a href="#">test21</a><a href="#">test22</a> <a href="#">test23</a> </p></div>
<div class="div2 backGreen"><h1>css设置为table布局</h1></div>
<div class="div3 backBlue"><h1>height:150px;line-height: 150px</h1></div>
</body>
</html>
效果如下:
更多推荐
已为社区贡献1条内容
所有评论(0)