1.absolute 絕對定位 這是咱們最經常使用的一種居中定位寫法 要求必須肯定div的寬高度 目前市面上的瀏覽器基本上都支持這種寫法css
<html lang="en"> <head> <meta charset="UTF-8"> <title>absolute居中定位</title> <style> *{margin:0;padding:0} .absoluteCenter{ width:600px; height:400px;position:absolute; background: rgb(50,183,97); left:50%; top:50%; margin-left: -300px; margin-top: -200px; } </style> </head> <body> <div class="absoluteCenter">我是absolute居中定位</div> </body> </html>
2.translate定位 這是css3 transform的屬性 經過自身的偏移來定位 並且他有個極大的好處 不須要知道div的寬高度 就像js裏的this self同樣 能夠將寬高度設爲百分比 IE browser<IE9不支持 在移動端使用較好html
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>translate居中定位</title> <style> *{margin:0;padding:0} .translateCenter{ width: 40%; height: 20%; position: absolute; left:50%; top:50%; transform:translate(-50%,-50%); background: #2d2d2d;} </style> </head> <body> <div class="translateCenter">我是translate居中定位</div> </body> </html>
3.margin居中定位 不須要肯定div的寬高度 讓top,bottom,left,right都爲0 再加個margin:auto 神來之筆 IE browser< IE 8不支持css3
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>margin居中定位</title> <style> *{margin:0;padding:0} .marginCenter{ width:200px; height: 200px; position: absolute;left:0; top:0; right:0; bottom: 0; margin: auto; background: #f2056e;} </style> </head> <body> <div class="marginCenter">我是margin居中定位</div> </body> </html>
4.fixed的居中定位 這個用的最多的可能就是導航條這塊兒 讓導航條居中顯示不隨頁面滾動瀏覽器
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>fixed居中定位</title> <style> *{margin:0;padding:0} .fixedCenter{max-width:980px; height:70px; position:fixed; margin:0 auto; left:0; right:0; background:rgb(67,163,244);} </style> </head> <body> <div class="fixedCenter">我是fixed居中定位</div> </body> </html>