有时候你看到别人写css代码的时候会发现:html,body{height:100%}
首先我们先看下w3c 对于height的定义 :

首先这个height:可能为百分数 就是相当于包含块的高度,如果为1个div没有设置宽度和高度呢. 不可否认的是,div会继承父元素的宽度100%,但是高度不会.如果div里面有文字就是内容撑开高度. 我们现在考虑的是div里面没有文字.

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>Document</title><style>div{height: 100%;background-color: #ff0;}</style>
</head>
<body><div> </div>
</body>
</html>

给div设置高度height:100% 结果是页面根本不会显示…因为 height:100%是想当于包含块的 这里div的包含块是body body 没有设置height 所以这时候的height:100% 相当于完全没有作用. 但是如果我们给body加上height:100%呢?

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>Document</title><style>div{height: 100%;background-color: #ff0;}body{height: 100%;}</style>
</head>
<body><div></div>
</body>
</html>

自己可以去测试 你会发现页面上还是啥没有,你会想 明明body包含块有高度了,为啥还是没有呢? 因为height:100% 是不是也是一个相对高度,而他是相对于浏览器跟标签也就是HTML 的高度. 他不是一个定值.所以height:100% 根本继承不到高度, 但是我给html 加上height:100% 就会发现div 也有高度了.html:height:100% 是相对于浏览器的本身的高度.这是可以获取到的.在dom中用window.innerHeight 这是在 html文件加载就自动形成的.

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>Document</title><style>div{height: 100%;background-color: #ff0;}body,html{height: 100%;}</style>
</head>
<body><div></div>
</body>
</html>

结果如下:

这下 明白 html,body{height:100%}存在的意义了吧.少一个都不行.

关于html,body{height:100%}的理解相关推荐

  1. 关于height:100%的简单理解

    要想高度百分比起作用,一般来说,要满足两个条件:其一,父标签有高度可寻,就是向上遍历父标签要找到一个定值高度(body,html另外讨论),如果中途有个height为auto或是没有设置height属 ...

  2. html div 高度100,深入理解CSS的height:100%和height:inherit之间的使用区别

    inherit确实是个好东西,不仅节约代码,尤其与background之流打交道:而且还利于维护. 注意,如果想要继承background的图片,不能这样缩写,会显得很天真: CSS Code复制内容 ...

  3. CSS 如何让 height:100%; 起作用

    当你设置一个页面元素的高度(height)为100%时,期望这样元素能撑满整个浏览器窗口的高度,但大多数情况下,这样的做法没有任何效果.你知道为什么height:100%不起作用吗? 按常理,当我们用 ...

  4. CSS中height:100vh和height:100%的区别是什么?

    CSS中height:100vh和height:100%的区别 首先,我们得知道1vh它表示的是当前屏幕可见高度的1/100,而1%它表示的是父元素长或者宽的1%(可以这么理解?) 1.对于设置hei ...

  5. css如何让height:100%起作用?

    原文出处:css如何让height:100%起作用? 当你设置一个元素的高度为100%时,期望这样元素能撑满整个浏览器窗口的高度,但大对数情况下,这样做法没有任何效果,你知道为什么height:100 ...

  6. height:100%和height:inherit比较

    height:100%和height:inherit 在我的理解中. height: 100%; 是会继承父元素的100%的高度 height: inherit; 是会继承父元素的高度 我觉得他们的意 ...

  7. html body div height: 100%;

    最近做了测试 html{ height: 100%;//全部内容高度,包括滚动出现的内容 background-color:#000; } body{ height: 100%;//只一页屏幕,用作滚 ...

  8. div高度、宽度100% div width、height 100%

    正像你所知道的那样,设置DIV大小的有两个属性width和height,以前在学习DIV每次给DIV设置100%宽度或高度时都很迷惑,不明确这个100%的宽度(高度)到底有多宽有多高?这个100%是从 ...

  9. 让height: 100%生效

    html: <body><div class="box"></div> </body> css: .box{position: fi ...

最新文章

  1. 可以用for循环直接删除ArrayList的特定元素吗?可能会出现什么问题?怎样解决?
  2. 高兴总结台式故障分析==方案
  3. Spring(4)——面向切面编程(AOP模块)
  4. python定义一个类描述数字时钟_python自定义时钟类、定时任务类
  5. iview table 自定义列_案例 | iview中Table:拖拽适配列、自定义固定列、合并行
  6. 第二天 PYTHON 基本数据类型 - 数字 - 字符串
  7. html页面退出用什么函数,离开网页弹窗函数onbeforeunload与onunload
  8. DataTables warning: Requested unknown parameter '0' from the data source for row '0'
  9. [20161128]关于Little Enddian.txt
  10. DeepLearningAI 学习笔记 1.1 深度学习概论
  11. InstallAnywhere制作出来的安装包在64位机上无法卸载
  12. 第一个python程序-判断登陆用户名和密码是否正确
  13. 【李宏毅NLP笔记】Tacotron 可以从哪些方面改进
  14. [裴礼文数学分析中的典型问题与方法习题参考解答]4.4.8
  15. 取色工具ColorPix
  16. android 启动第三方APP的方式
  17. java实现pdf旋转_Java实现PDF文本旋转倾斜的方法
  18. 十余种无限流量卡大对比,这一种的最实惠!
  19. { }大括号和[ ]中括号的用法
  20. 如何用Python制作简单又好看的词云?来瞅瞅吧~

热门文章

  1. 微信小程序 post请求发送x-www-form-urlencoded类型数据
  2. CPU卡技术学习笔记1
  3. steam验证登录失败_如何向Steam添加两方面身份验证
  4. 每日一句_《南柯子·池水凝新碧》
  5. pygame-KidsCanCode系列jumpy-part18-背景滚动
  6. 鸿蒙内核手机,华为和安卓说再见,推出鸿蒙内核手机,不再更新安卓
  7. column ‘_id‘ does not exis报错
  8. Codeforces1486 C1.Guessing the Greatest (easy version)(交互题+二分)
  9. linux宝塔重新安装,Linux服务器Windows系统 安装和卸载宝塔面板
  10. 反斜杠,让您的csv文档字符不撞车;让“借”您csv数据的人叫苦不迭。