以前的解决方法主要是利用js来实现,但用过的人都知道该办法有点繁琐。还有一种是在外部容器定义over-fow:hidden。但这种办法只会切割图片而不会自动适用。
形如:
<SCRIPT LANGUAGE="JavaScript"> function imgSize(url ,id) { var imgObj = new Image(); var imgDiv=document.getElementById(id) imgObj.src = url; imgDiv.innerHTML= imgObj.width + " × " + imgObj.height; } function changeSize(obj, width) { if (obj.width > width) { obj.width=width; } } </SCRIPT> <style type="text/css"> body { font-size: 12px; text-align: center; margin: 0px; padding: 0px; } #pic{ margin:0 auto; width:100%; padding:0; } #pic img{ max-width:758px; myimg:expression( onload=changeSize(this, 758) ); } </style> <div id="pic"> <img src="http://www.lanrencom.com/uploads/common/images/liehuo_1024x768_1.jpg" border="0" onload="changesize(this, 750);"> </div><br /><center>如不能显示效果,请按Ctrl+F5刷新本页,更多网页代码:<a href='https://www.lanrencom.com/' target='_blank'>https://www.lanrencom.com/</a></center>
提示:可修改后代码再运行!
下面的办法的出现应该感谢伟大的C2.0和更伟大的 microsoft没有它就不必有这么啰嗦的代码了^^)。本人仅在ie6.0,opea7.0于wnXP下测试通过,希望通过此篇文章抛砖引玉,望更多高手指点。关键在于:max- width:780px以及下面那行。
固定像素适应:
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>Css技巧:div下图片自适应大小的解决办法</title> <style type="text/css"> <!-- body { font-size: 12px; text-align: center; margin: 0px; padding: 0px; } #pic{ margin:0 auto; width:800px; padding:0; border:1px solid #333; } #pic img{ max-width:780px; width:expression(document.body.clientWidth > 780? "780px": "auto" ); border:1px dashed #000; } --> </style> </head> <body> <div id="pic"> <img src="https://www.lanrencom.com/uploads/common/images/liehuo_1024x768_1.jpg" alt="lanrencom.com"/> </div> </body> </html><br /><center>如不能显示效果,请按Ctrl+F5刷新本页,更多网页代码:<a href='https://www.lanrencom.com/' target='_blank'>https://www.lanrencom.com/</a></center>
按百分比适应:
<!DOCTYPE html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>Css技巧:div下图片自适应大小的解决办法</title> <style type="text/css"> <!-- body { font-size: 12px; text-align: center; margin: 0px; padding: 0px; } #pic{ margin:0 auto; width:800px; padding:0; border:1px solid #333; } #pic img{ max-width:780px; width:expression(document.body.clientWidth>document.getElementById("pic").scrollWidth*9/10? "780px": "auto" ); border:1px dashed #000; } --> </style> </head> <body> <div id="pic"> <img src="https://www.lanrencom.com/uploads/common/images/liehuo_1024x768_1.jpg" alt="lanrencom.com"/> </div> </body> </html><br /><center>如不能显示效果,请按Ctrl+F5刷新本页,更多网页代码:<a href='https://www.lanrencom.com/' target='_blank'>https://www.lanrencom.com/</a></center>