实例
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>4种对齐技巧</title> <style> .x{ width:400px; height:200px; } .a{ background-color: red; text-align: center;/*1水平居中*/ } .a span{ line-height: 200px;/*1垂直居中*/ } .b{ background-color: blue; text-align: center;/*2水平居中*/ display:table-cell;vertical-align:middle;/*2垂直居中*/ } .c{ background-color: yellow; display:table-cell;vertical-align:middle;/*2垂直居中*/ } .c div{ width: 50px; height:50px; background-color: red; margin:0 auto;/*水平居中*/ } .d{ background-color: green; text-align: center; display: table-cell; /*设置显示方式为表格单元格*/ vertical-align:bottom; /*设置该单元格内的元素底边居中*/ } .d ul{ margin:0; padding: 0; /*line-height: 200px;*/ } .d li{ list-style: none; display: inline; } </style> </head> <body> <div class="a x"> <span>1.子元素是行内元素,</span><!-- 水平居中:在父元素上设置: text-align:center;垂直居中:在行内子元素上设置行高与父元素相同: line-height --> </div> <div class="b x"> <span>2.子元素是</span><span>内联多行文本</span> <!-- 水平居中父元素设置text-align:center垂直居中父元素设置:display:table-cell;vertical-align:middle --> </div> <div class="c x"> <div></div> <!-- 3.子元素是块级元素, a.水平居中:子元素设置左右自动: margin: auto; b.垂直居中:与多行内联文本处理方式一致:display:table-cell;vertical-align:middle --> </div> <div class="d x"> <ul> <li><a href="">1</a></li> <li><a href="">2</a></li> <li><a href="">3</a></li> <li><a href="">4</a></li> <li><a href="">5</a></li> </ul> </div> <!-- 水平居中:子元素转行内元素,父元素加:text-align:center 垂直居中:可给分页的ul加行高line-height=parent.height 底边居中:更为常用,与多行内联文本垂直处理方式一致,vertical-align:bottom --> </body> </html>
运行实例 »
点击 "运行实例" 按钮查看在线实例
手写代码: