一、在上下结构的div布局中,可能出现div覆盖div,但是内容却没有出现覆盖的现象。看看一个示例

   1: <!DOCTYPE html>
   2: <html>
   3: <head>
   4: <title>DIV与DIV覆盖</title>
   5: <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
   6: <style>
   7: .boxa,.boxb{ margin:0 auto; width:400px;}
   8: .boxa-l{ float:left; width:280px; height:80px; border:1px solid #F00}
   9: .boxa-r{ float:right; width:100px; height:80px; border:1px solid #F00}
  10: .boxb{ border:1px solid #000; height:40px; background:#999}
  11: </style>
  12: </head>
  13: <body>
  14: <div class="boxa">
  15: <div class="boxa-l">内容左</div>
  16: <div class="boxa-r">内容右</div>
  17: </div>
  18: <div class="boxb">boxb盒子里的内容</div>
  19: </body>
  20: </html>

一般想需要将“.boxa”和“.boxb”布局是上下结构,从上图发现在浏览器中看到效果是两个盒子里内容是实现上下结构效果,但“.boxb”这个DIV跑到“.boxa”下面去了,但内容没有发生覆盖,只有DIV发生覆盖现象。


个原因是因为第一个大盒子里的子级使用了浮动float属性而产生了浮动,所以导致“.boxa”没有被撑开,而同级的“.boxb”盒子与
“.boxa”紧贴,而“.boxa”高度没有,“.boxa”的子级浮动的与“.boxb”不是同级,“.boxb”盒子依然认为“.boxa”没有高
度,所以导致“.boxb”DIV盒子就跑到“.boxa”子级DIV盒子下面形成了覆盖重叠现象。

问题解决办法,测试有三种:

1、给boxa添加一个height属性,height的值必须大于或等于baxa-l的高度

   1: <div class="boxa" style="height:81px;">

2、清除浮动

在“.boxa”盒子</div>闭合前加clear样式清除浮动。

   1: //css
   2: .clear{ clear:both}
   3:
   4: //修改boxa
   5: <div class="boxa">
   6:     <div class="boxa-l">内容左</div>
   7:     <div class="boxa-r">内容右</div>
   8:     <div class="clear"></div>
   9: </div>

或者在boxb上清除浮动

   1: <div class="boxb" style="clear:both">boxb盒子里的内容</div>

3、对“.boxa”添加overflow:hidden

   1: <div class="boxa" style="overflow:hidden">
   2:     <div class="boxa-l">内容左</div>
   3:     <div class="boxa-r">内容右</div>
   4:  </div>

二、相邻两个DIV重叠覆盖

这种问题一般是由于相邻两个DIV一个使用浮动一个没有使用浮动,这样照成两个DIV覆盖重叠现象。

   1: <!DOCTYPE html>
   2: <html>
   3: <head>
   4: <title>DIV与DIV覆盖</title>
   5: <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
   6: <style>
   7: .bb{ float:left; border:1px solid #333; background:#FFF;height:50px;}
   8: .cc{ border:1px solid #F00;background:#CCC; height:80px}
   9: </style>
  10: </head>
  11: <body>
  12: <div class="bb">我是bb里内容</div>
  13: <div class="cc">我是dd里内容</div>
  14: </body>
  15: </html>


上图或浏览器测试案例可以看出,“.bb”对应DIV盒子浮动覆盖在“.cc”对应DIV盒子之上,但内容没有覆盖,这是因为“.bb”对应DIV盒子使
用了浮动,而同级“.cc”对应DIV盒子没有使用浮动,一个使用浮动一个没有导致DIV不是在同个“平面”上,但内容不会照成覆盖现象,只有DIV形成
覆盖现象。

解决方法:

1、都不使用浮动,去掉.bb中的float,效果如下

2、都使用浮动,给.cc添加float:left,效果如下

3、对没有使用float浮动的DIV设置margin样式。给.cc添加margin:100px,效果如下

来源:http://www.ido321.com/669.html

怎么解决div覆盖内容却没覆盖的问题?的更多相关文章

  1. mybatis逆向工程的注意事项:mapper文件内容不是覆盖而是追加

    XXXMapper.xml文件已经存在时,如果进行重新生成则mapper.xml文件内容不被覆盖而是进行内容追加,结果导致mybatis解析失败. 解决方法:删除原来已经生成的mapper xml文件 ...

  2. 覆盖问题:最大覆盖问题(Maximum Covering Location Problem,MCLP)和集覆盖问题(Location Set Covering Problem,LSCP)

    集覆盖问题研究满足覆盖所有需求点顾客的前提下,服务站总的建站个数或建 设费用最小的问题.集覆盖问题最早是由 Roth和 Toregas等提出的,用于解决消防中心和救护车等的应急服务设施的选址问题,他们 ...

  3. 为什么当多个inline-block的div中,如果有的div没有内容而有的div有内容,有内容的会下沉?

    为什么当多个inline-block的div中,如果有的div没有内容而有的div有内容,有内容的会下沉? 就像这样 两个div高度相同,第二个我写了一个1当作 有内容吧,它就下沉了... 奇怪... ...

  4. 如何让2个并列的div根据内容自动保持同等高度

    最近在工作中碰到一个需求: 有左右2个并列的div,2个div都不能限定高度.左div为导航,右div为内容.如何能让左div块自动获得和右div块相等的高度? 同时,也有网友提问到"如果右 ...

  5. 解决div里面img的缝隙问题~

    解决div里面img的缝隙问题 图片IMG与容器下边界之间有空隙怎么办?这里介绍3中简单的解决方法. 第一,给图片img标签display:block. img{display:block} 第二,定 ...

  6. 让2个并列的div根据内容自动保持同等高度js

    有左右2个并列的div,2个div都不能限定高度.左div为导航,右div为内容.如何能让左div块自动获得和右div块相等的高度? 同时,也有网友提问到“如果右块高度比左块低,会不会导致左块的内容被 ...

  7. hdu 1255 覆盖的面积(求覆盖至少两次以上的面积)

    了校赛,还有什么途径可以申请加入ACM校队?  覆盖的面积 Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 65536/32768 K ...

  8. 解决div嵌套时IE8和FF无法自适应高度

    解决div嵌套时IE8和FF无法自适应高度 还是做类似新浪评论回复的时候,将回复的DIV嵌套在一个DIV中,然后点击回复的时候显示子DIV,这是父DIV的高度是会变化的,于是我将父DIV的高度设置为h ...

  9. 解决div里插入img下边缝隙问题

    <html>   <head>   <title> new document </title>   <meta name="author ...

随机推荐

  1. JavaScript里最有效率的功能特征检测方法

    代码执行效率对于程序员和程序来说都是至关重要的,尤其是遇到了那些需要大量调用.反复调用的函数方法.在很多Javascript框架里你都能看到有反复调用的函数.当在使用这些框架时,我们必须小心翼翼的尽量 ...

  2. 团体程序设计天梯赛-练习集L1-008. 求整数段和

    L1-008. 求整数段和 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 杨起帆 给定两个整数A和B,输出从A到B的所有整数以及这些 ...

  3. 可以继承的C++ Singleton基类

    单例模式(Singleton Pattern)是设计模式中的一种,它用来保证系统中最多只能存在一个它的实例,其做法是由类自身来创建和持有它的对象实例,把对实例的创建权和管理权都控制在自己手中,以便控制 ...

  4. C/C++中几种经典的垃圾回收算法

    1.引用计数算法 引用计数(Reference Counting)算法是每个对象计算指向它的指针的数量,当有一个指针指向自己时计数值加1:当删除一个指向自己的指针时,计数值减1,如果计数值减为0,说明 ...

  5. nginx知识点

    nginx 安装与配置文件 #cat /etc/nginx/nginx.conf #运行用户user www-data;    #启动进程,通常设置成和cpu的数量相等worker_processes ...

  6. Linux下Nginx+Tomcat整合的安装与配置

    因为nginx处理静态页面的速度很快,并且是免费的,它还可以配置负载均衡的服务器集群来搭建多个tomcat,所以nginx+tomcat是企业搭 建javaee项目很好的选择.nginx主要是通过反向 ...

  7. ANDROID_MARS学习笔记_S01_005CheckBox

    一. 1.checkbox_layout.xml <?xml version="1.0" encoding="utf-8"?> <Linear ...

  8. Apache Tomcat下载、安装、配置图文教程

    本文已迁移到我的个人网站 http://www.wshunli.com 文章地址: http://www.wshunli.com/2016/03/19/Tomcat安装配置/ (整理截图.安装过程更加 ...

  9. POJ2965——The Pilots Brothers' refrigerator

    The Pilots Brothers' refrigerator Description The game “The Pilots Brothers: following the stripy el ...

  10. HDU4614【线段树。】

    果然看了理解了一下大牛的代码然后自己敲结果果然有不少错误 回复说,线段树做为一种数据结构,最好以一种风格过一题裸的然后作为自己的模板.. 二分写的也很恶心哪 还有题目稍复杂一点的注定得推敲各种公式,不 ...