HTML中图片溢出div怎么办

  介绍

小编给大家分享一下HTML中图片溢出div怎么办,希望大家阅读完这篇文章之后都有所收获、下面让我们一起去探讨吧!

首先我们先来做个简单的css布局:

& lt; html>   & lt; head>   ,,,& lt; meta  charset=皍tf-8",/比;   ,,,& lt; title> div图片溢出的解决方案& lt;/title> & lt; style 类型=拔谋?css"在# div_home  {   ,,,宽度:80%;   ,,,保证金:,0,汽车;},# div_left  {   ,,,宽度:70%;   ,,,身高:,800 px;   ,,,浮动:离开,,,,   ,,,填充:,20 px;} # div_right  {   ,,,宽度:,15%;   ,,,浮动:,;   ,,,身高:,800 px;   ,,,填充:,20 px;} & lt;/style> & lt; script 类型=拔谋?javascript"祝辞& lt;/script> & lt;/head> & lt; body>   ,,,& lt; div  id=癲iv_home"比;   ,,,,,,,& lt; div  id=癲iv_left"比;   ,,,,,,,,,,,& lt; https://www.yisu.com/zixun/img  src=" http://images.cnblogs.com/cnblogs_com/hlwyfeng/600950/o_123.png " alt="小图片"/>   
  
  

下面我们再插入尺寸大于div的图片

& lt; img  id=癷mg_test", https://www.yisu.com/zixun/src=" http://www.xiaoxiongbizhi.com/wallpapers/__85/y/w/ywzwdjof0.jpg " alt="大图片"/>

解决方案一

在css中设置该图片的样式,把最大宽设置为小于它父级div的宽

img  {   ,,,max-width:, 730 px;   }

但是这样对于不同分辨率的屏幕,也会出现溢出的问题

解决方案二

不显示溢出的部分:

溢出:,隐藏。

这个代码加在div_left下面:

# div_left  {   ,,,宽度:70%;   ,,,身高:,800 px;   ,,,浮动:左;   ,,,填充:,20 px;   ,,,溢出:,隐藏;   }

显然,这种方法的弊端就是图片不能完全显示

虽然解决了溢出的问题,但是显示效果上不友好,如果被隐藏的部分刚好有重要的信息,那么这样的设计是不合理的。

最终解决方案

要满足解决图片溢出div问题,同时图片能完整显示,也要兼容不同的分辨率这三个条件,这里用一段JavaScript代码来解决。
思路是获取div的宽,然后动态设置图片的宽度,就这么简单。

在敲代码之前,先删除溢出:隐藏;代码,这种”将就”的处理方法我们应该摒弃。

window.onload =,函数(){,,,var  getEle =, document.getElementsByTagName (“img");,,,, var  getEle_divLeft =, . getelementbyid (“div_left");,,,,, (var  i=0, i

可能存在的缺陷及解决对策

有些div在开始加载的时候,会因为图片的宽度比较大而变宽,然后再由于布局浮动的影响再变小,由于图片获取的是一开始的div宽度,所以他的宽度还是不变。
这里给出保守的解决方案:
在css中,先把图片属性设置为无,不显示。在加载javascript代码的时候,设置宽高,再显示出来:

img  {,,, max-width:, 730 px,,,,,显示:,没有;}

在javascript后面加入显示图片代码:

getEle[我].style [“display"],=,“inline"

在代码中的位置:

window.onload =,函数(){,,,var  getEle =, document.getElementsByTagName (“img");,,,, var  getEle_divLeft =, . getelementbyid (“div_left");,,,,, (var  i=0, i

这样就解决了这个图片显示溢出div问题,并满足上面三个条件。
完整代码:

& lt; html> & lt; head>   ,,& lt; meta  charset=皍tf-8",/比;   ,,& lt; title> div图片溢出的解决方案& lt;/title> & lt; style 类型=拔谋?css"在# div_home  {   ,,宽度:80%;   ,,,保证金:0,汽车;}# div_left  {   ,,宽度:70%;   ,,,身高:800 px;   ,,浮动:左;   ,,,背景颜色:# 836 fff;      ,,,填充:20 px;} # div_right  {   ,,,宽度:15%;   ,,,浮动:正确的;   ,,,身高:800 px;   ,,,背景颜色:# CDCD00;      ,,,填充:20 px;} img  {   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

HTML中图片溢出div怎么办