CSS子元素与父元素高度一致的效果怎样定位
这篇文章主要给大家分享CSS子元素与父元素高度一致的效果的实现,下文将介绍几种定位的方法,对于大家学习和理解CSS定位有一定的帮助,感兴趣的朋友可以参考,希望大家阅读完这篇文章能有所收获,下面我们一起来学习一下吧。
绝对定位方法:
(1)将父元素设置为相对定位,不写父元素的高度时,会随着左边的子元素高度变化而变化
.parent {
/*关键代码*/
position: relative;
/*其他样式*/
width: 800px;
color: #fff;
font-family: "Microsoft Yahei";
text-align: center;
}
(2)左边一个元素有个最小高度的情况
.left {
min-height: 700px;
width: 600px;
}
(3)右边元素要想跟父元素的高度是一致,那么可以用绝对定位这样设置,如果不想同时写top和bottom,写一个时,再写上height:100%,也可以达到一样的效果
.right {
/*关键代码*/
width: 200px;
position: absolute;
top: 0;
right: 0;
bottom: 0;
/*其他样式*/
background: #ccc;
}
(4)完整例子代码:
!DOCTYPE html>
html >
head>
meta charset="UTF-8">
title>
子元素高度与父元素一致/title>
style>
.parent{
position: relative;
background: #f89;
width: 800px;
color: #fff;
font-family: "Microsoft Yahei";
text-align: center;
}
.left {
min-height: 700px;
width: 600px;
}
.right {
width: 200px;
position: absolute;
top: 0;
right: 0;
bottom: 0;
background: #ccc;
}
/style>
/head>
body>
div class="parent">
div class="left">
左侧 left 不定高,parent的高度随着左侧left 的高度变化而变化,右侧也跟着变
/div>
div class="right">
这边的高度跟父元素高度一致
/div>
/div>
/body>
/html>
左侧 left 不定高,parent的高度随着左侧left 的高度变化而变化,右侧也跟着变
这边的高度跟父元素高度一致
(5)效果
(6)问题来了:
如果右侧的子元素高度超出了.parent,怎么办?
right的子元素,高度为1024px,会撑破容器,给.right加上 overflow:auto 就防止溢出了
.right-inner {
background: limegreen;
height: 1024px;
}
效果图如下:
完整代码:
!DOCTYPE html>
html >
head>
meta charset="UTF-8">
title>
子元素高度与父元素一致/title>
style>
.parent{
position: relative;
background: #f89;
width: 800px;
color: #fff;
font-family: "Microsoft Yahei";
text-align: center;
}
.left {
min-height: 700px;
width: 600px;
}
.right {
width: 200px;
position: absolute;
top: 0;
right: 0;
height: 100%;
overflow: auto;
background: #ccc;
}
.right-inner {
background: limegreen;
height: 1024px;
}
/style>
/head>
body>
div class="parent">
div class="left">
左侧 left 不定高,parent的高度随着左侧left 的高度变化而变化,右侧也跟着变
/div>
div class="right">
div class="right-inner">
right的子元素,高度为1024px,会撑破容器,给.right加上 overflow:auto 就防止溢出了/div>
/div>
/div>
/body>
/html>
左侧 left 不定高,parent的高度随着左侧left 的高度变化而变化,右侧也跟着变
right的子元素,高度为1024px,会撑破容器,给.right加上 overflow:auto 就防止溢出了
关于CSS子元素跟父元素的高度一致的实现方法就分享到这,上述示例代码有一定的参加价值,有需要的朋友可以参考了解看看。最后,想要了解更多可以继续浏览网络其他相关的文章。
本文转载自网络
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: CSS子元素与父元素高度一致的效果怎样定位
本文地址: https://pptw.com/jishu/655232.html