img图片自适应宽和高[转]

控制缩略图常见的是JS来控制,还有就是最直接的方法定义img的宽高;
下面两种方法自适应宽和高,zhenzhai推荐使用CSS方法;
一、CSS方法;

要是在CSS设置最小值和最大值(max-width: 100px; max-
height: 100px; width: expression(this.width >100 && this.height < this.width ? 100: true); height: expression(this.height > 100 ? 100: true);)

  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     <style type="text/css">
  5         a img {
  6             border: 0;
  7         }
  8
  9         .imgthumblist {
 10             margin: 0 3px;
 11             padding: 0;
 12             list-style: none;
 13         }
 14
 15             .imgthumblist li {
 16                 float: left;
 17                 display: inline;
 18                 text-align: center;
 19                 background: #F0F9FF;
 20                 width: 108px;
 21                 height: 163px;
 22                 width: 100px;
 23                 height: 155px;
 24                 overflow: hidden;
 25                 border: 1px solid #B9D0ED;
 26                 padding: 3px;
 27                 margin: 3px;
 28             }
 29
 30                 .imgthumblist li.list1line {
 31                     height: 123px;
 32                     height: 115px;
 33                 }
 34
 35                 .imgthumblist li.list2line {
 36                     height: 143px;
 37                     height: 135px;
 38                 }
 39
 40         .contentL .imgthumblist li {
 41             margin: 0 1px 3px;
 42         }
 43
 44         .imgthumblist p {
 45             margin: 0;
 46             line-height: 18px;
 47             font-size: 12px;
 48         }
 49
 50         .imgthumblist div {
 51             line-height: 90px;
 52             font-size: 90px;
 53             height: 100px;
 54             display: table;
 55         }
 56
 57             .imgthumblist div a {
 58                 display: table-cell !important;
 59                 display: block;
 60                 width: 100px;
 61                 vertical-align: middle;
 62             }
 63
 64             .imgthumblist div img {
 65                 vertical-align: middle;
 66                 max-width: 100px;
 67                 max-height: 100px;
 68                 width: expression(this.width >100 && this.height < this.width ? 100: true);
 69                 height: expression(this.height > 100 ? 100: true);
 70                 font-size: 10px;
 71             }
 72
 73         @media all and (min-width: 0px) {
 74             .imgthumblist div img {
 75                 width: 100px;
 76                 height: 100px;
 77             }
 78         }
 79         /*for Opera Only*/
 80     </style>
 81 </head>
 82 <body>
 83     <div>
 84         <ul class="imgthumblist">
 85             <li class="list2line">
 86                 <div><a href="http://www.liaozhenxin.com/blog/article.asp?id=155" title="图片名称"><img src="http://www.liaozhenxin.com/blog/attachments/month_0612/3200612221928.jpg" alt="图片名称" /></a></div>
 87                 <p><a href="http://www.liaozhenxin.com/blog/article.asp?id=155">图片名称</a></p>
 88                 <p class="smalltxt">图片数:1</p>
 89             </li>
 90             <li class="list2line">
 91                 <div><a href="http://www.liaozhenxin.com/blog/article.asp?id=155" title="图片名称"><img src="http://www.liaozhenxin.com/blog/attachments/month_0612/p20061222185348.jpg" alt="图片名称" /></a></div>
 92                 <p><a href="http://www.liaozhenxin.com/blog/article.asp?id=155">图片名称</a></p>
 93                 <p class="smalltxt">图片数:3</p>
 94             </li>
 95             <li class="list2line">
 96                 <div><a href="http://www.liaozhenxin.com/blog/article.asp?id=155" title="图片名称"><img src="http://www.liaozhenxin.com/blog/attachments/month_0612/v2006122219452.jpg" alt="特别的爱给特" /></a></div>
 97                 <p><a href="http://www.liaozhenxin.com/blog/article.asp?id=155">图片名称</a></p>
 98                 <p class="smalltxt">图片数:4</p>
 99             </li>
100         </ul>
101     </div>
102 </body>
103 </html>

html

二、JS方法
我就不说了代码写的很清楚

 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     <script type="text/javascript">
 5         //改变透明度参数:图片对象,透明度:1-100的值
 6         function setAlpha(imgObj, opacityValue) {
 7             imgObj.filters.alpha.opacity = parseInt(opacityValue);
 8         }
 9
10         //图片的显示大小[以宽度来限制]
11         function DrawImageW(imgObj, widthValue) {
12             var image = new Image();
13             image.src = imgObj.src;
14             if (image.width > 0 && image.height > 0) {
15                 if (image.width >= widthValue) {
16                     imgObj.width = widthValue;
17                     imgObj.height = (image.height * widthValue) / image.width;
18                 } else {
19                     imgObj.width = image.width;
20                     imgObj.height = image.height;
21                 }
22             }
23         }
24
25         //图片的显示大小[以高度来限制]
26         function DrawImageH(imgObj, heightValue) {
27             var image = new Image();
28             image.src = imgObj.src;
29             if (image.width > 0 && image.height > 0) {
30                 if (image.height >= heightValue) {
31                     imgObj.height = heightValue;
32                     imgObj.width = (image.width * heightValue) / image.height;
33                 } else {
34                     imgObj.width = image.width;
35                     imgObj.height = image.height;
36                 }
37             }
38         }
39         //图片的显示大小[宽高同时限制]
40         function DrawImage(imgObj, widthValue, heightValue) {
41             var image = new Image();
42             image.src = imgObj.src;
43             if (image.width > 0 && image.height > 0) {
44                 if (image.height > heightValue || image.width > widthValue) {
45                     var h = 0, w, wflg = false;
46                     if (image.height > heightValue)
47                         wflg = true;
48                     if (wflg) {
49                         w = widthValue;
50                         h = (image.height * widthValue) / image.width;
51                     }
52                     if (h == 0 || h > heightValue) {
53                         h = heightValue;
54                         w = (image.width * heightValue) / image.height;
55                     }
56                     //alert(w)
57                     //alert(h)
58                     imgObj.width = w;
59                     imgObj.height = h;
60                 } else {
61                     imgObj.width = image.width;
62                     imgObj.height = image.height;
63                 }
64             }
65         }
66
67         function zoomImg(imgObj) {
68             var zoom = parseInt(imgObj.style.zoom, 10) || 100; zoom += event.wheelDelta / 12; if (zoom > 0) imgObj.style.zoom = zoom + ‘%‘;
69             return false;
70         }
71
72     </script>
73 </head>
74 <body>
75     <img src="http://www.liaozhenxin.com/blog/attachments/month_0612/3200612221928.jpg"  style="filter:alpha(opacity=60)" onmouseover="setAlpha(this,100)" onmouseout="setAlpha(this,60)" title="修改透明度" />
76
77     <img src="http://www.liaozhenxin.com/blog/attachments/month_0612/3200612221928.jpg"  title="宽在100以内" />
78
79     <img src="http://www.liaozhenxin.com/blog/attachments/month_0612/3200612221928.jpg"  title="高在100以内" />
80
81     <img src="http://www.liaozhenxin.com/blog/attachments/month_0612/3200612221928.jpg"  title="宽高在100以内" /><br />
82
83     <img src="http://www.liaozhenxin.com/blog/attachments/month_0612/p20061222185348.jpg"  title="宽在100以内" />
84
85     <img src="http://www.liaozhenxin.com/blog/attachments/month_0612/p20061222185348.jpg"  title="高在100以内" />
86
87     <img src="http://www.liaozhenxin.com/blog/attachments/month_0612/p20061222185348.jpg"  title="宽高在100以内" /><br />
88
89     <img src="http://www.liaozhenxin.com/blog/attachments/month_0612/v2006122219452.jpg"  title="宽在100以内" />
90
91     <img src="http://www.liaozhenxin.com/blog/attachments/month_0612/v2006122219452.jpg"  title="高在100以内" />
92
93     <img src="http://www.liaozhenxin.com/blog/attachments/month_0612/v2006122219452.jpg"  onmousewheel="return zoomImg(this)" title="放大缩小" />
94 </body>
95 </html>

javascript

来自:http://www.cnblogs.com/MaxIE/archive/2007/01/30/634579.html

时间: 2025-01-31 06:17:14

img图片自适应宽和高[转]的相关文章

Android中获取图片的宽和高

在Android中,我们想获取图片的宽和高应该怎么办?一.正常加载图片的方法下获取宽和高 举一个简单的例子:创建一个图片的副本 //加载原图 Bitmap bmSrc = BitmapFactory.decodeResource(getResources(), R.drawable.photo3); //创建副本 //1.创建与原图一模一样大小的bitmap对象,该对象中目前是没有内容的,可以比喻为创建了和原图一样大小 //的白纸 Bitmap bmCopy = Bitmap.createBit

图片上传时获取图片的宽和高

经常会遇到图片上传的问题,这时候我们会传图片的地址,宽和高到服务器,至于图片上传就不说了,这里主要说图片上传时获取图片的原始宽和高的问题. 一般而言,我们把图片上传至服务器时,服务器会返回一个上传地址给我们,这个就是我们图片的url了,但是光有这个还是不够的,因为还要将图片的宽和高传给服务器,这时候就可以这样做了.直接上代码: var img = new Image() img.src = url 然后就可以使用img.width和img.height来获取图片的宽和高了.当然仅仅这样做是不够的

requests获取图片的宽和高

try: if cover: resp = requests.get('%s?x-oss-process=image/info' % (url), timeout=30) if resp.status_code == 200: rj = resp.json() article_data['c_h'] = float(rj['ImageHeight']['value']) article_data['c_w'] = float(rj['ImageWidth']['value'])except Ex

C# 上传图片前判断上传图片的宽和高

网上找了好久没有找到... 最后百度到了这句话“由上传的HttpPostFile的InputStream创建一个Image对象,然后想怎么处置就随便你了”. HTML代码: <asp:FileUpload ID="fuTx" runat="server" CssClass="uploadFile" /> cs后台代码: System.Drawing.Image upimage = System.Drawing.Image.FromSt

瀑布流布局(等宽不等高)

图片等宽等高 实现 图片满屏展示 不变形图片大小不固定 实现 图片满屏展示 不变形 (依靠瀑布流实现)需要用到绝对定位 第一排的图片是不需要进行定位处理的每张图片显示的时候都必须取到上一张图片的高度 原文地址:https://blog.51cto.com/13550695/2457032

html中图片自适应浏览器,宽度高度自适应,图片自适应屏幕的小而不是宽高固定不变

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Show.aspx.cs" Inherits="Wlxxs.Web.Xxs.Show" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/x

UILabel实现自适应宽高需要注意的地方(三)

一.需求图如下所示 UILabel 的高度自适应 UILabel中的段落间距可设置 图片效果如下: 调整段落适应长宽高方式: 需求: 保证"游戏玩法" 章节,UILabel高度自适应,行内距为4px 做法: UILabel实现自适应宽高(一)中说明了 UILabel 自适应的方法,但是如果加行间距,就要用到  NSMutableAttributedString  富文本的方式实现,来判断行内距然后再通过 sizetofit 进行高度自适应. 自适应方法如下: Coding: - (vo

根据图片的链接获取图片的宽高

//根据图片的链接获取图片的宽高 - (CGSize)downloadImageSizeWithURL:(id)imageURL { NSURL *URL = nil; if([imageURL isKindOfClass:[NSURL class]]){ URL = imageURL; } if([imageURL isKindOfClass:[NSString class]]){ URL = [NSURL URLWithString:imageURL]; } if(URL == nil) r

label 自适应宽 高

//初始化label    UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0,0,0,0)];    //设置自动行数与字符换行    [label setNumberOfLines:0];    // 测试字串    NSString *str = @"\n  一别之后 两地相悬 只说三四月 谁知五六年 七玄琴无心谈 八行书无可传 九连环从中断 十里长亭望眼欲穿 百思想 千系念 万般无奈把郎怨  \n  万言千语说不完 百