CSS中经常会用到元素居中,那么今天我为大家分享几种水平居中的方法,下面代码都可以达到同样的居中效果,来不及解释了,快上马(码):
一、margin : 0 auto;
<head> <meta charset="UTF-8"> <title>Title</title> <style> div { width: 100px; height: 100px; background: pink; } p { width: 50px; height: 50px; background: red; margin: 0 auto; } </style> </head> <body> <div> <p></p> </div> </body>
此种方法适用于块级标签在父级块标签内使用;
注意事项:父级标签必须是块级标签。如果父级不设宽度,body 内一级元素默认为浏览器宽度。
二、position+margin ;
<head> <meta charset="UTF-8"> <title>Title</title> <style> div, p { margin: 0; padding: 0; } div { width: 100px; height: 100px; background: pink; position: relative; } p { width: 50px; height: 50px; background: red; position: absolute; top: 0; left: 25px; } </style> </head> <body> <div> <p></p> </div> </body>
此种方法运用相对定位实现:定位脱离文档流,不占用宽高;
注意事项:父级元素必须要给相对属性: Position: relative; 。
三、position+margin (百分比);
<head> <meta charset="UTF-8"> <title>Title</title> <style> div, p { margin: 0; padding: 0; } div { width: 100px; height: 100px; background: pink; position: relative; } p { width: 50px; height: 50px; background: red; position: absolute; top: 0; left: 50%; margin-left: -25px; } </style> </head> <body> <div> <p></p> </div> </body>
此种方法主要适用于浏览器通栏定位;
注意事项:position 定位 left:50%,需要向左移动宽度一半的距离。