zoukankan      html  css  js  c++  java
  • 【CSS中width、height的默认值】

    对于初学者来说,CSS中的width、height的默认值是很神奇的,因为经常看到如下这样的代码:明明只给一个#father标签(红色的div)设置了一个width,为啥它在浏览器中显示出来是有一个固定的height的呢。

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="utf-8">
    
        <title>测试宽度</title>
        <style type="text/css">
            .body{
                margin: 0;
                padding: 0;
            }
            #father{
                width: 500px;
                background: red;
            }
            #father .son{
                width: 100px;
                height: 100px;
                background: green;   
            }
    
        </style>
    </head>
    <body>
    <div id="father">
        <div class="son">
    
        </div>
    </div>
    </body>
    </html>

    于是就去w3c上搜索,发现height的默认值都是auto,也就是说上一行代码中的height是默认值auto。那么为什么会编程100px的高度呢。

    通过查阅资料得知,如果将height设为auto,那么该标签的高度将由它的子标签的高来决定。也就是说会子标签会撑开父级标签。上面代码就是因为.son的100px的高度撑开了父标签father的高度。

    那么宽度是否也会被撑开呢?

    于是自己继续做了一次实验:把father的width注释,运行后发现father的宽度和浏览器等宽。查资料发现对于div标签来说width默认是100%,就是和父级标签等宽。所以不设father的宽度,他就默认等于body的宽度了。

  • 相关阅读:
    iOS开发UI篇—Modal简单介绍
    iOS开发UI篇—APP主流UI框架结构
    A1081. Rational Sum
    A1049. Counting Ones
    A1008. Elevator
    A1104. Sum of Number Segments
    B1003. 我要通过!
    二分查找、two points、排序
    A1069. The Black Hole of Numbers
    A1101. Quick Sort
  • 原文地址:https://www.cnblogs.com/heyode/p/5973960.html
Copyright © 2011-2022 走看看