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="upload/2010/3/201003080925510677.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="upload/2010/3/201003080925510677.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="upload/2010/3/201003080925510677.gif" /></p></div> </body> </html>
方法四:
<html> <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("upload/2010/3/201003080916366805.gif") center no-repeat } --> </style> </head> <body> <div></div> </body> </html>