html:
    (1)本可以使用空box3去解决,但是让html的归html,让css的归css
    代码:

    1. <!DOCTYPE html>
    2. <html lang="en">
    3. <head>
    4. <meta charset="UTF-8">
    5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
    6. <title>Document</title>
    7. <link rel="stylesheet" href="../css/reset.css">
    8. <link rel="stylesheet" href="../css/67使用after伪类解决高度塌陷.css">
    9. </head>
    10. <body>
    11. <div class="box1">
    12. <div class="box2"></div>
    13. <!-- <div class="box3"></div> -->
    14. </div>
    15. </body>
    16. </html>

    css:
    (1)让css去处理,那么生成一个伪类,::after {} ,造出来要给元素
    (2)必须包含content: ‘’; 同时要设置float:both;来消除浮动元素的影响 ;最后因为使用伪类创造是行内元素,那么要使用display: block;来生成要给行内元素;
    (3)且将是.box1::after{} ,而不是.box2::after{}
    代码:

    1. .box1 {
    2. border: 5px solid palevioletred;
    3. }
    4. .box2 {
    5. width: 400px;
    6. height: 200px;
    7. background-color: peru;
    8. float: left;
    9. }
    10. /* .box3 {
    11. width: 400px;
    12. height: 200px;
    13. background-color: purple;
    14. float: right;
    15. } */
    16. .box1::after {
    17. content: '';
    18. clear: both;
    19. display: block;
    20. }

    image.png