只用CSS实现容器内图片上下左右居中

 一直以来,大家都知道,DIV容器内设置 text-align:center 即可让图片居中,但是DIV内默认的图片是上对齐,不会上下居中,如果想要实现这样的效果,JS判断是比较麻烦的,因为DIV容器内的图片高度是不一定的,那么只有用table了,我想大多数人事不愿意这么做的,那么怎么办呢,还是用CSS控制下吧
     其实早就在找这样的代码,今天终于自己试着写了一份出来,屌丝们可以自己分析下原理,其实很简单
     如果你之前也不会,那么希望对你有所帮助

 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 2 <html xmlns="http://www.w3.org/1999/xhtml">
 3 <head>
 4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 5 <title>纯css实现div容器内图片上下左右居中效果-柯乐义</title>
 6 <style type="text/css">
 7 *{ margin:0; padding:0; list-style:none;}
 8 img{ border:none;}
 9 
10 .main{ width:600px; height:400px; margin:100px auto;text-align:center;vertical-align:middle;display:block;position:relative; background:#ddd;}
11 .main a{display:table-cell;vertical-align:middle;width:600px; height:400px; }
12 .main a img{max-width:600px;max-height:400px; }
13 </style>
14 </head>
15 
16 <body>
17 <div class="main">
18 <a href="http://keleyi.com/a/bjac/wynnj5xc.htm" target="_blank"><img src="http://keleyi.com/keleyi/phtml/picnext/images/k06.jpg" alt="柯乐义" /></a>
19 </div>
20 </body>
21 </html>

兼容IE8,火狐,Chrome,Opera等浏览器

http://www.cnblogs.com/sosoft/

原文和效果: http://keleyi.com/a/bjad/fc6fwm34.htm

原文地址:https://www.cnblogs.com/sosoft/p/3504298.html