Div与CSS布局,最让人头疼的就是容器内的东西如何垂直居中的问题,我在做站时也遇到,查了一下资料,总结出以下居中办法,兼容IE与及 Firefox!
方法一
- <style?type="text/css">??
- <!--? ??
- *?{margin:0;padding:0} ??
- div?{ ??
- ??width:500px; ??
- ??height:500px; ??
- ??border:1px?solid?#666; ??
- ??overflow:hidden; ??
- ??position:relative; ??
- ??display:table-cell; ??
- ??text-align:center; ??
- ??vertical-align:middle ??
- } ??
- div?p?{ ??
- ??position:static; ??
- ??+position:absolute; ??
- ??top:50% ??
- ??} ??
- img?{ ??
- ??position:static; ??
- ??+position:relative; ??
- ??top:-50%;left:-50%; ??
- ??} ??
- -->??
- </style>??
- <div><p><img?src="http://www.google.com/intl/en/images/logo.gif"?/></p></div>??
方法二
- <!DOCTYPE?html?PUBLIC?"-//W3C//DTD?XHTML?1.0?Strict//EN"?"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">??
- <html?xmlns="http://www.w3.org/1999/xhtml">??
- <head>??
- <meta?http-equiv="Content-Type"?content="text/html;?charset=utf-8"?/>??
- <title>div里面图片垂直居中的几个例子</title>??
- <style?type="text/css">??
- <!--? ??
- body?{ ??
- ??margin:0;padding:0 ??
- } ??
- div?{ ??
- ??width:500px; ??
- ??height:500px; ??
- ??line-height:500px; ??
- ??border:1px?solid?#666; ??
- ??overflow:hidden; ??
- ??position:relative; ??
- ??text-align:center; ??
- } ??
- div?p?{ ??
- ??position:static; ??
- ??+position:absolute; ??
- ??top:50% ??
- } ??
- img?{ ??
- ??position:static; ??
- ??+position:relative; ??
- ??top:-50%;left:-50%; ??
- ??vertical-align:middle ??
- } ??
- p:after?{ ??
- ??content:".";font-size:1px; ??
- ??visibility:hidden ??
- } ??
- -->??
- </style>??
- </head>??
- <body>??
- <div><p><img?src="http://www.google.com/intl/en/images/logo.gif"?/></p></div>??
- </body>??
- </html>??
方法三
- <!DOCTYPE?html?PUBLIC?"-//W3C//DTD?XHTML?1.0?Strict//EN"?"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">??
- <html?xmlns="http://www.w3.org/1999/xhtml">??
- <head>??
- <meta?http-equiv="Content-Type"?content="text/html;?charset=utf-8"?/>??
- <title>div里面图片垂直居中的几个例子</title>??
- <style?type="text/css">??
- <!--? ??
- *?{margin:0;padding:0} ??
- div?{ ??
- ??width:500px; ??
- ??height:500px; ??
- ??line-height:500px; ??
- ??border:1px?solid?#666; ??
- ??overflow:hidden; ??
- ??position:relative; ??
- ??text-align:center; ??
- } ??
- div?p?{ ??
- ??position:static; ??
- ??+position:absolute; ??
- ??top:50%; ??
- ??vertical-align:middle ??
- } ??
- img?{ ??
- ??position:static; ??
- ??+position:relative; ??
- ??top:-50%;left:-50%; ??
- ??vertical-align:middle ??
- } ??
- -->??
- </style>??
- </head>??
- <body>??
- <div><p><img?src="http://www.google.com/intl/en/images/logo.gif"?/></p></div>??
- </body>??
- </html>??
方法四(针对背景图片居中)
- <!DOCTYPE?html?PUBLIC?"-//W3C//DTD?XHTML?1.0?Strict//EN"?"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">??
- <html?xmlns="http://www.w3.org/1999/xhtml">??
- <head>??
- <meta?http-equiv="Content-Type"?content="text/html;?charset=utf-8"?/>??
- <title>div里面图片垂直居中的几个例子</title>??
- <style?type="text/css">??
- <!--? ??
- *?{margin:0;padding:0;} ??
- div?{ ??
- ??width:500px;border:1px?solid?#666; ??
- ??height:500px; ??
- ??background:url("http://www.google.com/intl/en/images/logo.gif")?center?no-repeat ??
- } ??
- -->??
- </style>??
- </head>??
- <body>??
- <div></div>??
- </body>??
- </html>??
转自(http://www.ok22.org/art_detail.aspx?id=73)