13_清除浮动问题.html 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7. <title>浮动</title>
  8. <style>
  9. #div0{
  10. background: #999;
  11. /* height:200px; */
  12. /* overflow: hidden; */
  13. }
  14. #div1{
  15. width: 200px;
  16. height: 200px;
  17. background: #f00;
  18. float: left;
  19. }
  20. #div2{
  21. width: 200px;
  22. height: 200px;
  23. background: #0f0;
  24. float: left;
  25. }
  26. #div3{
  27. width: 200px;
  28. height: 200px;
  29. background: #00f;
  30. float: left;
  31. }
  32. h2{
  33. height: 100px;
  34. background: pink;
  35. }
  36. .clearfix::after{
  37. /* 先生成伪元素 */
  38. content:"";
  39. /* 设置为块级元素 */
  40. display: block;
  41. /* 清浮动 */
  42. clear:both;
  43. }
  44. </style>
  45. </head>
  46. <body>
  47. <!-- 浮动 float:left|right|none;
  48. 浮动的元素 会脱离文档流,空间释放
  49. 浮动的元素 会脱离文档流空间释放 ,导致父元素没有高度
  50. 解决浮动导致的元素的塌陷问题?
  51. 1 给元素添加高度
  52. 2 父元素添加一个overflow:hidden (方法技巧)
  53. 3 在浮动的元素下添加一个元素(块级元素),通过clear:left|right|both清除浮动
  54. 4 给父元素添加 clearfix
  55. .clearfix::after{
  56. /* 先生成伪元素 */
  57. content:"";
  58. /* 设置为块级元素 */
  59. display: block;
  60. /* 清浮动 */
  61. clear:both;
  62. }
  63. -->
  64. <div id="div0" class="clearfix" >
  65. <div id="div1"></div>
  66. <div id="div2"></div>
  67. <div id="div3"></div>
  68. <!-- <div style="clear:both"></div> -->
  69. <!-- 伪元素 -->
  70. </div>
  71. <h2></h2>
  72. </body>
  73. </html>