CSS图片垂直居中实现方法详解


方法一:利用定位
HTML结构如:

复制代码
代码如下:

<div class="box">
<a class="pic-wrap" href="#" target="_blank">
<img src="http://img01.taobaocdn.com/tps/i1/T1LeeNXodaXXXXXXXX-130-150.png">
</a>
</div>

CSS代码如:

复制代码
代码如下:

body {
margin: 0;
padding: 0;
font: 12px/1.5 tahoma,arial;
}
.box {
width: 220px;
height: 220px;
border: 1px solid #F30;
margin: 100px auto 0;
display: table;
}
.pic-wrap {
display: table-cell;
text-align: center;
vertical-align: middle;
}
/*主要针对IE6、7的hack*/
.box {
*position: relative;
}
.pic-wrap {
*width: 100%;
*position: absolute;
*top: 50%;
*left: 0;
/*继承自body的字体会影响到ie6,设置默认的windows系统字体*/
_font-family: sans-serif;
}
.pic-wrap img {
*position: relative;
*top: -50%;
*left: 0;
/*在ie中空文本节点有默认高度*/
vertical-align: middle\9;
/*在ie中,a标签中的img标签默认有蓝色边框*/
border: none\9;
}

方法二:
HTML结构同上;
CSS代码如:

复制代码
代码如下:

.box {
width: 220px;
height: 220px;
border: 1px solid #F30;
margin: 100px auto 0;
}
.pic-wrap {
display: table-cell;
vertical-align: middle;
width: 220px;
height: 220px;
text-align: center;
/*ie6、7不支持display:table-cell*/
*display: block;
*font-size: 192px; /*字体大小为height*0.783或者height/1.14,这里约为192px*/
_font-family: sans-serif; /*设置字体,否则在ie6下会有一个像素的偏差*/
}
.pic-wrap img {
border: none;
vertical-align: middle; /*由于ie下空文本节点有默认高度,所以设置*/
}

【注意,当在css中设置了body元素字体的话,那么方法二在ie7下会失效的】
最佳方法:
CSS代码如:

复制代码
代码如下:

body {
margin: 0;
padding: 0;
<SPAN style="COLOR: #ff6600">font: 12px/1.5 tahoma,arial;</SPAN>
}
.box {
width: 220px;
height: 220px;
border: 1px solid #F30;
margin: 100px auto 0;
}
.pic-wrap {
display: table-cell;
vertical-align: middle;
width: 220px;
height: 220px;
text-align: center;
/*ie6、7不支持display:table-cell*/
*display: block;
_font-size: 192px;
<SPAN style="COLOR: #ff6600">+line-height: 220px; /*设置ie7中空文本节点行高为220px*/</SPAN>
_font-family: sans-serif;
}
.pic-wrap img {
border: none;
vertical-align: middle\9; /*由于ie中有默认高度的空文本节点*/
}



相关阅读:
轻松修复Discuz!数据库
Wordpress博客首页中的每篇日志添加图片
sql 触发器使用例子
SEO的最高境界-SEO外链增加流量总结大全(收藏)
Community Server专题三:HttpModule
面向XHTML的IE条件注释
php中显示数组与对象的实现代码
CSS实例::nth-child和:nth-type-of的区别
Oracle存储过程返回数组的方法
如何为 Visual Studio 2005添加新的的 Team Foundation Server(TFS)
Linux 操作系统日志管理全攻略
一个修改Oracle数据库用户密码的小诀窍
MD5 Digest - VB, VBScript (ASP), and javascript versions
Windows Vista SP1 v658 安装完成的差异
快速导航
PHP MySQL HTML CSS JavaScript MSSQL AJAX .NET JSP Linux Mac ASP 服务器 SQL jQuery C# C++ java Android IOS oracle MongoDB SQLite wamp 交通频道 作文范文 小学五年级作文550字:我们的村庄 这1314只为自己而活发表日志:还记得那年初三——大布丁的作文 读了假如给我三天光明有感 电视台总监工作总结 小诗( 2) 药监局企业自律的调研报告 幸福,为什么摸不到作文1200字 除了爱不请自来,还有《不速之客》 我国制造业新产品开发与销售现状分析 梅西的上亿身价合理吗 我家的破鞭炮 在构建和谐社会座谈会上的发言 拼装飞机200字 倡楼戏赠 有趣的“勒槐花”作文900字 落寞的小龙、、只想做一只鱼、、、 阳光靠自己发现550字 学校党支部会议记录模板 文明礼仪名言名句 不可能先生 兄弟是什么作文800字 海吟作文200字 三八妇女节给妈妈的礼物作文 是你唤来了萤火虫,照亮了星空那夜的雨季 广西梧州高考满分作文范文800字 玫瑰园里的泥土 看不到雪的冬天作文400字 写动物的作文 对心对频却不对人 当下比较火的美人心计台词 民政局2005年工作总结及2006年工作要点 《汤姆·索耶历险记》读后感 小学六年级作文550字:欢乐课间十分钟 名人有理想抱负的故事 2015年公司新年慰问信 党性分析报告(镇府领导版)_先进性教育 水调歌头作文700字 县邮政局进行商业化管理实践初探 与挫折的一次对抗作文400字 初中初一作文650字:寒假记事 小猫仔 一 七绝惊蛰 我愿意放弃一切 包括你 经典语录 初中初一作文650字:令人痛心的一幕 免费[名师风范]韩军:关于“新语文教育”的若干重大问题 往里走,往外走 可爱的金刚鹦鹉 这个世界需要爱 亲爱的,我们都要好好的 初中初二作文800字:镇定,使她救了自己 党支部年终述职述廉报告

Copyright © 2016 phpStudy |