当前位置: 首页 > 图文教程 > 网络编程 > Javascript > js+CSS 图片等比缩小并垂直居中实现代码

Javascript
javascript 关闭IE6、IE7
javascript substr和substring用法比较
javascript 强制弹出窗口代码-跨拦截
javascript 获取多条数据(模拟ajax获取数据)
js 分页代码带切换效果
选择指定数量后checkbox不可选(变灰)javascript代码
javascript 图片上传预览-兼容标准
jquery 截取字符串的实现
jquery tagname 取得方法
scrollTop 用法说明
javascript 倒排序方法
慎用 somefunction.prototype 分析
几个常用的JavaScript字符串处理函数 - split()、join()、substring()和indexOf()
javascript 根据歌名获取播放地址和歌词内容
js在Firefox与IE中对DOM对像的引用的比较
Javascript String对象扩展HTML编码和解码的方法
javascript HTMLEncode HTMLDecode的完整实例(兼容ie和火狐)
Javascript 获取字符串字节数的多种方法
javascript 常用方法总结
cookie丢失问题(认证失效) Authentication (用户验证信息)也会丢失

Javascript 中的 js+CSS 图片等比缩小并垂直居中实现代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 405 ::
收藏到网摘: n/a

本例子在在 ff 2.0/ ie6 / ie7 中测试通过。但在 opera 8.5 cn中没有通过。希望大家测试。
复制代码 代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>图片自动等比例缩小且垂直居中-www.ruanchen.com </title>
<!--[if lte IE 6]>
<script type="text/javascript" language="javascript">
function imgFix() {
//定义要限制的图片宽高,这个宽高要同style里面定义的相同,小于限定高宽的图片不操作
var widthRestriction = 200;
var heightRestriction = 200;
var allElements = document.getElementsByTagName('*')
for (var i = 0; i < allElements.length; i++)
{
if (allElements[i].className.indexOf('imgBox') >= 0)
{
var imgElements = allElements[i].getElementsByTagName('img');
for (var j=0; j < imgElements.length; j++)
{
if ( imgElements[j].width > widthRestriction || imgElements[j].height > heightRestriction )
{
if ( imgElements[j].width > imgElements[j].height)
{
imgElements[j].height = imgElements[j].height*(widthRestriction/imgElements[j].width);
imgElements[j].width = widthRestriction;
} else
{
imgElements[j].width = imgElements[j].width*(heightRestriction/imgElements[j].height);
imgElements[j].height = heightRestriction;
}
}
if ( imgElements[j].height < heightRestriction )
{
imgElements[j].style.paddingTop = ( heightRestriction -imgElements[j].height ) /2 + "px";
}
} /*for j*/
}
}/*for i*/
}
window.onload = imgFix;
</script>
<![endif]-->
<style type="text/css">
<!--
* {
margin:0;
padding:0;
}
.imgBox li {
list-style:none;
width:200px; /* 宽度 */
height:200px; /* 高度 */
background:#ccc;
border:1px solid #666;
text-align:center;
margin:5px;
line-height:200px;
}
.imgBox img {
max-width:200px; /* 宽度 */
max-height:200px; /* 高度 */
vertical-align:middle;
}
-->
</style>
</head>
<body>
<ul class="imgBox">
<li><img src="......" alt="img" /></li>
<li><img src="......" alt="img" /></li>
<li><img src="......" alt="img" /></li>
<li><img src="......" alt="img" /></li>
</ul>
</body>
</html>