zoukankan      html  css  js  c++  java
  • css中 出现height为100%失效的原因及解决方案

    我们都知道需要给html和body标签设置了高度height:100%之后,再给内部的div设置height:100%的时候,内部div的高度100%才会起到作用。这是由于:%是一个相对父元素计算得来的高度,要想使他有效,我们需要设置父元素的height。解决如下:

    html,body{
            height: 100%;
            margin: 0;
            padding: 0;
    }

    那么浏览器是如何计算高度和宽度的?

    Web浏览器在计算有效宽度时会考虑浏览器窗口的打开宽度。如果你不给宽度设定任何缺省值,那浏览器会自动将页面内容平铺填满整个横向宽度。即我们不设置宽,会自动填满整个横向宽度 。

    但是高度的计算方式完全不一样。事实上,浏览器根本就不计算内容的高度,除非内容超出了视窗范围(导致滚动条出现)。或者你给整个页面设置一个绝对高度。否则,浏览器就会简单的让内容往下堆砌,页面的高度根本就无需考虑。
    因为页面并没有缺省的高度值,所以,当你让一个元素的高度设定为百分比高度时,无法根据获取父元素的高度,也就无法计算自己的高度。

    即父元素的高度只是一个缺省值:height: auto;我们设置height:100%时,是要求浏览器根据这样一个缺省值来计算百分比高度时,只能得到undefined的结果。也就是一个null值,浏览器不会对这个值有任何的反应。

  • 相关阅读:
    Runtime类与Process类
    runtime 得到jvm的内存空间信息
    random 类的实际应用
    NumberFormat类实际应用
    java 国际化程序实现
    Calendar类取得系统的当前日期
    demo-文件复制
    用递归方法 在列表中 使用二分查找。找一个数字
    第一个 购物车程序
    练习题1 —— 全局替换程序
  • 原文地址:https://www.cnblogs.com/ypppt/p/13090636.html
Copyright © 2011-2022 走看看