当前位置:  开发笔记 > 前端 > 正文

flex孩子长大了父母

如何解决《flex孩子长大了父母》经验,为你挑选了1个好方法。

如何在不设置静态高度值且没有绝对位置的情况下强制将绿色框包含在红色框中?

我想缩小内容以适应父级.

允许内容(在这种情况下为视频)缩小并允许滚动条.

.my-box {
  height: 300px;
  width: 600px;
  background: red;
  padding: 5px;
}
.content-box {
  background: blue;
}
.col {
  display: flex;
  flex-direction: column;
  justify-content: space-between
}
.box-shrink {
  flex: 0 1 auto;
  background: green;
  padding: 5px;
  margin: 5px;
}
.box-grow {
  flex: 1 0 auto;
  background: green;
  padding: 5px;
  margin: 5px;
}
video {
  max-height: 100%;
  max-width: 100%;
  margin: auto;
  display: block;
}
small sized static content
small sized static content



1> Michael_B..:

解决方案#1 - 没有滚动

而不是flex: 1 0 auto在视频容器上,只需使用flex: 1.这会根据可用空间而不是内容的固有高度来调整项目的大小.

然后,因为弹性项目不能小于其内容的大小 - min-height: auto是默认值 - 添加min-height: 0以允许项目缩小以适合容器内部.

.box-grow {
  flex: 1; /* formerly flex: 1 0 auto; */
  background: green;
  padding: 5px;
  margin: 5px;
  min-height: 0; /* new */
}

.my-box {
  height: 300px;
  width: 600px;
  background: red;
  padding: 5px;
}
.content-box {
  background: blue;
}
.col {
  display: flex;
  flex-direction: column;
  justify-content: space-between
}
.box-shrink {
  flex: 0 1 auto;
  background: green;
  padding: 5px;
  margin: 5px;
}
.box-grow {
  flex: 1; /* formerly flex: 1 0 auto; */
  background: green;
  padding: 5px;
  margin: 5px;
  min-height: 0; /* new */
}
video {
  max-height: 100%;
  max-width: 100%;
  margin: auto;
  display: block;
}
small sized static content
small sized static content
推荐阅读
echo7111436
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有