1.水平居中
1.1已知宽度块元素宽度 :
.child{width:1000px;margin:0 auto;}
1.2文本内容居中:
.parent{text-align:center;}
1.3通过表格:
.child{display:table;margin:0 auto;}
1.4已知宽度,通过设置position:absolute,margin-left为宽度的负一半
.parent{position:relative;}
.child{position:absolute;left:50%;width:150px;margin-left:-75px;}
1.5未知宽度,通过设置position:absolute
.parent{position:relative;}
.child{position:absolute;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);}
1.6使用flex布局实现(兼容性不好,感觉有点变成浮动的效果,不在文档流)
第一种:.parent{display:flex;justify-content:center;}
第二种:.parent{display:flex;}.child{margin:0 auto;}
2.垂直居中
2.1文本垂直居中 .child{height:20px;line-height:20px}
2.2vertial-align:middle;
第一种方法:.parent{display:table-cell;vertical-align:middle;height:20px;}
第二种方法:.parent{display:inline-block;vertical-align:middle;line-height:20px;}
2.3未知高度,设置position:absolute
.parent{position:relative;}
.child{position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);}
2.4已知高度,设置position:absolute,margin-top为高度的负一半
.parent{position:relative;}
.child{position:absolute;top:50%;height:150px;margin-top:-75px;}
2.5使用flex布局实现
.parent{display:flex;align-items:center;}