分享用纯CSS实现三列DIV等高布局的方法

开发 前端
我们经常会看到用DIV等高布局的方法,但是用CSS等高布局则不常见,本文介绍了用纯CSS实现等高布局,希望你会有收获,一起来看。

DIV等高布局,我想很多人都遇见过,我也看过不少的方法,有的是通过背景图片,实现假象的等高效果;还有的用js实现等等。这些都是方法,但是现在都不用以上的方法,来个真正的纯css实现等高!

现在我们来看看真正的 CSS 实现的等高布局,其方法主要是采用“隐藏容器溢出”、“正内补丁”和“负外补丁”结合的方法实现的。 下面来看看实际的例子(三列等高),以下面的 XHTML 代码为例:

html代码:

 

  1. <div id="wrap"> 
  2. <div id="left"> 
  3. <p>left</p> 
  4. <p>left</p> 
  5. <p>left</p> 
  6. <p>left</p> 
  7. <p>left</p> 
  8. </div> 
  9. <div id="center"> 
  10. <p>center</p> 
  11. <p>center</p> 
  12. <p>center</p> 
  13. <p>center</p> 
  14. <p>center</p> 
  15. <p>center</p> 
  16. <p>center</p> 
  17. <p>center</p> 
  18. <p>center</p> 
  19. <p>center</p> 
  20. <p>center</p> 
  21. <p>center</p> 
  22. <p>center</p> 
  23. <p>center</p> 
  24. <p>center</p> 
  25. <p>center</p> 
  26. <p>center</p> 
  27. <p>center</p> 
  28. <p>center</p> 
  29. <p>center</p> 
  30. </div> 
  31. <div id="right"> 
  32. <p>right</p> 
  33. <p>right</p> 
  34. <p>right</p> 
  35. </div> 
  36. </div> 

css代码:

 

  1. <style type="text/css">  
  2. body, p, ul { margin:0padding:0; }  
  3. #wrap { overflow:hiddenwidth:1000pxmargin:0 auto; }  
  4. #left#center#right { margin-bottom:-10000pxpadding-bottom:10000px; }  
  5. #left { float:leftwidth:250pxbackground:#00FFFF; }  
  6. #center { float:leftwidth:500pxbackground:#FF0000; }  
  7. #right { float:rightwidth:250pxbackground:#00FF00; }  
  8.  
  9. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
  10. <html xmlns="http://www.w3.org/1999/xhtml">  
  11. <head>  
  12. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  
  13. <title>CSS等高布局</title>  
  14. <style type="text/css">  
  15. *{  
  16. margin:0;  
  17. padding:0;  
  18. }  
  19. #wrap{  
  20. overflow:hidden;  
  21. width:1000px;  
  22. margin:0 auto;  
  23. }  
  24. #left,#center,#right{  
  25. margin-bottom:-10000px;  
  26. padding-bottom:10000px;  
  27. }  
  28. #left{  
  29. float:left;  
  30. width:250px;  
  31. background:#00FFFF;  
  32. }  
  33. #center{  
  34. float:left;  
  35. width:500px;  
  36. background:#FF0000;  
  37. }  
  38. #right{  
  39. float:right;  
  40. width:250px;  
  41. background:#00FF00;  

 

  1. </style> 
  2. </head> 
  3. <body> 
  4. <div id="wrap"> 
  5. <div id="left"> 
  6. <p>left</p> 
  7. <p>left</p> 
  8. <p>left</p> 
  9. <p>left</p> 
  10. <p>left</p> 
  11. </div> 
  12. <div id="center"> 
  13. <p>center</p> 
  14. <p>center</p> 
  15. <p>center</p> 
  16. <p>center</p> 
  17. <p>center</p> 
  18. <p>center</p> 
  19. <p>center</p> 
  20. <p>center</p> 
  21. <p>center</p> 
  22. <p>center</p> 
  23. <p>center</p> 
  24. <p>center</p> 
  25. <p>center</p> 
  26. <p>center</p> 
  27. <p>center</p> 
  28. <p>center</p> 
  29. <p>center</p> 
  30. <p>center</p> 
  31. <p>center</p> 
  32. <p>center</p> 
  33. </div> 
  34. <div id="right"> 
  35. <p>right</p> 
  36. <p>right</p> 
  37. <p>right</p> 
  38. </div> 
  39. </div> 
  40. </body> 
  41. </html> 

 

【编辑推荐】

  1. CSS自定义滚动条样式
  2. Div+CSS常见错误总结
  3. div+css牛人也得看的15个css
  4. 非常优秀的jQuery+CSS实现动态导航菜单教程
  5. 10 个漂亮的 CSS3 表单制作教程
责任编辑:于铁 来源: 86ue.com
相关推荐

2010-09-06 15:46:08

CSSDIV

2010-09-09 13:12:54

CSSfloatDIV

2010-08-16 15:46:16

DIV居中

2010-09-14 17:07:26

DIV浮动定位CSS

2009-07-15 18:23:36

跨流览器多列布局

2010-08-24 15:45:48

DIVCSSfloat

2010-09-02 14:30:57

DIV CSS

2010-08-24 11:00:55

DIV CSS

2010-08-26 16:19:41

DIV圆角

2010-09-07 15:31:21

DIV CSS表单

2010-08-23 14:30:14

DIV+CSS

2010-09-10 14:06:47

DIV固定CSS

2010-09-10 08:54:52

DIV居中

2010-08-25 12:47:40

DIVCSS

2010-09-09 10:56:56

CSS

2010-08-17 11:12:18

DIV CSS

2010-08-24 09:05:20

CSS+DIV

2010-08-23 10:50:39

DIV+CSS

2010-08-23 13:59:32

DIV CSSmarginpadding

2010-09-09 10:37:39

CSSdiv列高度
点赞
收藏

51CTO技术栈公众号