css处理水平居中问题
1、水平居中设置-行内元素
通过父元素设置 1 text-align:center; ,让父元素的内容居中
2、水平居中设置-定宽块状元素
块状元素的宽度width为固定值,通过设置“左右margin”值为“auto”来实现居中的
例子:
Markup
定宽块状元素水平居中
p{
width: 200px;/*固定的宽度*/
margin: 20px auto;/*左右margin设置为auto*/
border: 1px solid red;
}
我是定宽块状元素,我要水平居中显示。
3、水平居中设置-不定宽块状元素
方法1. 加入 table 标签
例子:
1 DOCTYPE HTML> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>不定宽块状元素水平居中title> 6 <style> 7 table{ 8 margin:0 auto; 9 } 10 /*下面是任务区代码*/ 11 .wrap{ 12 background:#ccc; 13 } 14 style> 15 head> 16 <body> 17 <table> 18 <tbody> 19 <tr><td> 20 <p class="wrap"> 21 我要水平居中 22 p> 23 td>tr> 24 tbody> 25 table> 26 27 body> 28 html>
方法2. 设置 display:inline; 方法,与第一种类似,显示类型设为行内元素,进行不定宽元素的属性设置
例子:
DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <title>不定宽块状元素水平居中title> <style> .container{text-align:center;} .container ul{list-style:none;margin:0;padding:0;display:inline;} .container li{margin-right:8px;display:inline;} style> head> <body> <p class="container"> <ul> <li><a href="#">1a>li> <li><a href="#">2a>li> <li><a href="#">3a>li> ul> p> body> html>
方法3. 设置 position:relative 和 left:50% 利用相对定位的方式,将元素向左偏移 50% ,即达到居中的目的
例子:
DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <title>不定宽块状元素水平居中title> <style> /*下面是代码任务区*/ .wrap{ clear:both; float:left; position:relative; left:50% } .wrap-center{ background:#ccc; position:relative; left:-50%; } style> head> <body> <p class="wrap"> <p class="wrap-center">我们来学习一下这种方法。p> p> body> html>
ps:欢迎指正