简介:
如何使用css让不固定宽高的div水平垂直居中呢?这个问题似乎有很多解决办法,尝试了网上的最简单且兼容低版本浏览器的方法,但发现存在一些小问题,所以写此文章留存。
1、水平居中
1.1、父容器container添加css属性text-align:center; 子容器center添加css属性display:inline-block;
1.2、代码如下:
<!DOCTYPE html>
<html>
<head>
<meta
charset
=
"utf-8"
>
<meta
http-equiv
=
"X-UA-Compatible"
content
=
"IE=edge"
>
<title>
水平居中
</title>
<meta
name
=
"description"
content
=
""
>
<meta
name
=
"viewport"
content
=
"width=device-width, initial-scale=1"
>
<style>
*
{
margin
:
0
;
padding
:
0
;
font-size
:
12px
;
color
:
#FFF
;
}
.container
{
text-align
:
center
;
/*主要代码*/
width
:
800px
;
height
:
200px
;
margin
:
0
auto
;
background-color
:
#FF5E53
;
}
.center
{
display
:
inline-block
;
/*主要代码*/
*display
:
inline
;
zoom
:
1
;
/*for ie67*/
padding
:
10px
;
border
:
1px
solid
#FFF
;
}
</style>
</head>
<body>
<div
class
=
"container"
>
<div
class
=
"center"
>
1、将父级元素设为text-align: center; 2、自身div设置为display: inline-block;
</div>
</div>
</body>
</html>
|
2、水平垂直居中
2.1、具体还是看代码吧!
2.2、代码如下:
|
<!DOCTYPE html>
<html>
<head>
<meta
charset
=
"utf-8"
>
<meta
http-equiv
=
"X-UA-Compatible"
content
=
"IE=edge"
>
<title>
水平垂直居中
</title>
<meta
name
=
"description"
content
=
""
>
<meta
name
=
"viewport"
content
=
"width=device-width, initial-scale=1"
>
<style>
*
{
margin
:
0
;
padding
:
0
;
font-size
:
12px
;
color
:
#FFF
;
}
.container
{
display
:
table
;
/*主要代码*/
*position
:
relative
;
/*for ie67*/
background-color
:
#FF5E53
;
width
:
800px
;
height
:
200px
;
overflow
:
hidden
;
margin
:
0
auto
;
}
.content
{
vertical-align
:
middle
;
display
:
table-cell
;
text-align
:
center
;
/*主要代码*/
*position
:
absolute
;
*top
:
50%
;
*left
:
50%
;
/*for ie67*/
}
.center
{
display
:
inline-block
;
/*主要代码*/
*display
:
inline
;
zoom
:
1
;
*position
:
relative
;
*top
:
-50%
;
*left
:
-50%
;
/*for ie67*/
padding
:
10px
;
border
:
1px
solid
#fff
;
}
</style>
</head>
<body>
<div
class
=
"container"
>
<div
class
=
"content"
>
<div
class
=
"center"
>
<img
src
=
"http://static.ydcss.com/www/img/logo.png"
/>
<br/>
啦啦啦,啦啦啦,我是卖报的小行家....
</div>
</div>
</div>
</body>
</html>
|