设置height:100%无效的原因以及两种解决方法

简介: 设置height:100%无效的原因以及两种解决方法

原因:我们知道在把盒子宽度自适应为浏览器窗口宽度,只需设置width:100%就可轻松解决问题,但是让盒子的高度自适应浏览窗口的高度并非那么容易,这是因为css内部计算的原因

<!-- 高度实际为字体大小 -->
<div class="box" style="width:100%;height:100%;background-color:red;">
    width:100%;height:100%;
</div>

解决方法一:设置父元素高度

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

备注:vue或者react等可以通过开发者模式查看当前父元素是谁

解决方法二:不用设置父元素高度,通过设置定位(fixed或absolute)解决

.box {
  /* position: fixed; */
  position: absolute;
  top: 0;
  left: 0;
}

在使用height: 100%;时需要注意的一些事项

  1. margin 和 padding 会让你的页面出现滚动条,也许这是你不希望的。
  2. 如果你的元素实际高度大于你设定的百分比高度,那元素的高度会自动扩展。
目录
打赏
0
0
0
0
1
分享
相关文章
div高度设置100%无效的问题
div高度设置100%无效的问题
196 1
Element el-button 按钮组件详解
本文目录 1. 背景 2. 按钮分类 3. 按钮样式 4. 按钮状态 5. 按钮分组 6. 按钮尺寸 7. 小结
3221 0
Element el-button 按钮组件详解
postcss-px-to-viewport-8-plugin 适配
postcss-px-to-viewport-8-plugin 适配
1502 0
antd popover定位不准闪跳解决+自己实现popover库
我在写H5-dooring时,发现我们用的popover会发生闪跳,而且第一次闪跳就算了,每次还会有另一个方向的闪跳。 于是我大概百度了下,基本都说需要给固定宽高即可,让后试了下发现没用,就算触发组件和弹窗元素都给了宽高,也一样闪跳。由于antd的popover底层的实现是套其他第三方的库,第三方库又用到了其他的前端组件, 所以锁心自己实现一个。
1219 0
解决在vue中设置的height: 100%没有效果
文章讲述了在Vue中设置`height: 100%`无效的问题,并提供了解决方法:确保`html`、`body`和`#app`元素的高度都设置为`100%`,以保证子元素的高度能正确继承父元素的高度。
解决在vue中设置的height: 100%没有效果
简单记录使用 ElementPlus 的虚拟化树形控件(el-tree-v2)心得
这篇文章分享了作者使用ElementPlus的虚拟化树形控件`el-tree-v2`的心得,展示了其基本用法和如何通过自定义模板来增强树节点的交互性。
3130 1
简单记录使用 ElementPlus 的虚拟化树形控件(el-tree-v2)心得
HTML5中video标签controlslist属性的使用方法
`controlsList`属性为开发者提供了更多控制HTML5视频播放器行为的能力,让视频内容的集成更加灵活和符合需求。通过精心设计的控制列表,可以提升用户体验,同时保持内容的安全性和专业性。这种细节的控制和定制能力是现代Web开发的一个重要方面,反映了HTML5对开发者和内容创作者需求的响应。
751 1
|
9月前
|
ThreeJs限制模型拖动的范围
这篇文章讲解了在Three.js中如何限制模型拖动的范围,确保模型在特定边界内移动,提供了实现拖动限制的代码示例和技术细节。
270 1
ThreeJs限制模型拖动的范围
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等