DIV层加入margin后的异常问题及解决

开发 前端
DIV层如果加了margin后总宽度超过父级层宽度就自动换行了,那么如何让浮动层加margin后不换行呢?这里和大家分享一下解决方法,相信本文介绍一定会让你有所收获。

本文和大家重点讨论一下DIV层加margin后宽度超过父层自动换行的解决方法,相信通过本文的实例讲解你对DIV层加margin后宽度超过父层自动换行的问题一定会有深刻的认识,请看下文详细介绍。

DIV层加margin后宽度超过父层自动换行的解决方法

下面看浮动层加margin后换行的例子:

比如说有个DIV宽度为380px,它里面有一个菜单列表,每个宽度为60px,margin-right为20px。如果就按照下面的HTML结构来做的话,那么这个菜单列表能在这个DIV里一行显示完整吗?

  1. <DIV> 
  2. <DIV>winhd1</DIV> 
  3. <DIV>winhd2</DIV> 
  4. <DIV>winhd3</DIV> 
  5. <DIV>winhd4</DIV> 
  6. <DIV>winhd5</DIV> 
  7. </DIV> 
  8.  

5个菜单,每个宽度为60px,右边外补白为20px,因此每个菜单整体宽度是80px,5个菜单总长度为400px,而父级层宽度只有380px,根据浮动的原理,那么第5个菜单将毫无疑问的被挤下去即换行了。

◆看下面的解决方法:

代码如下:

  1. <DIV> 
  2. <DIVclassDIVclass="overflowDIV"> 
  3. <DIV>winhd1</DIV> 
  4. <DIV>winhd2</DIV> 
  5. <DIV>winhd3</DIV> 
  6. <DIV>winhd4</DIV> 
  7. <DIV>winhd5</DIV> 
  8. </DIV> 
  9. </DIV> 
  10.  

 父级层宽度380px,遮罩层overflowDIV宽度设置为菜单需要的400px,overflow为hidden。因此,很自然的,遮罩层多出的20像素部分则不会显示出来。而菜单就在这400px的宽度里为所欲为了。
 

【编辑推荐】

  1. DIV+CSS布局网站的六大优点
  2. CSS属性选择器语法详解
  3. CSS中DIV弹出层问题解决方案
  4. 七大CSS选择符用法详解
  5. 探究CSS高级语法中选择器分组和CSS继承用法

 

 

责任编辑:佚名 来源: winhd.net
相关推荐

2010-08-26 14:00:28

CSSmargin

2010-09-07 09:08:03

DIV弹出层

2010-08-31 16:09:04

DIV+CSS

2010-09-07 09:50:35

DIVCSS

2010-09-10 09:31:08

CSSDIV

2010-09-13 08:45:23

DIVFlash

2010-08-31 09:13:00

margin-top

2010-08-30 09:22:13

DIV高度自适应

2010-09-08 09:28:33

CSSmargin-top

2010-08-25 11:23:31

IE6margin

2010-08-17 13:16:33

DIVCSS

2009-11-09 10:10:13

WCF异常

2010-09-13 17:15:59

margin-top

2010-08-26 08:45:32

margin:0pxa

2010-08-26 12:59:29

marginCSS

2010-08-23 15:51:54

paddingmargin

2012-11-12 11:33:06

路由器组网H3C

2010-08-26 13:24:15

CSSmargin

2024-05-08 16:44:40

TCPRST网络协议

2023-09-17 23:23:14

Java异常堆栈
点赞
收藏

51CTO技术栈公众号