结论
- width的%:定义基于包含块(父元素)宽度的百分比宽度,会突破父级的限制
- width的auto:尽量被父级包裹
- height的%:基于包含它的块级对象的百分比高度,会突破父级的限制
- height的auto:尽量被父级包裹
案例
一定复制代码跑一遍,花几分钟体会一下尽量被父级包裹与突破父级的限制
width案例
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <style type="text/css"> * { margin: 0;padding: 0; } body { background: #dcdcdc; } .box { width: 400px; border: 3px solid red; padding: 0 50px; } .box1 { width: auto; height: 100px; background: pink; padding: 0 50px; margin: 0 50px; border-width: 0 50px; border-style: solid; border-color: green; } .box2 { width: 100%; height: 100px; background: gold; padding: 0 50px; margin: 0 50px; border-width: 0 50px; border-style: solid; border-color: green; } </style> </head> <body> <div class="box"> <div class="box1"></div> <div class="box2"></div> </div> </body> </html>
height案例
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <style type="text/css"> * { margin: 0;padding: 0; } body { background: #dcdcdc; } .box { width: 400px; border: 3px solid red; padding: 50 0px; height: 400px; } .box1 { width: 200px; height:auto; background: pink; padding: 50px 0px; margin: 50px 0px; border-width: 50px 0px; border-style: solid; border-color: green; } .box2 { width: 200px; height:100%; background: gold; padding: 50px 0px; margin: 50px 0px; border-width: 50px 0px; border-style: solid; border-color: green; } </style> </head> <body> <div class="box"> <div class="box1"></div> <div class="box2"></div> </div> </body> </html>