在此处输入图像描述

我用Here's the code来实现上述布局:

.header {
  height: 50px;
}

.body {
  position: absolute;
  top: 50px;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
}

.sidebar {
  width: 140px;
}

.main {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.content {
  flex: 1;
  display: flex;
}

.column {
  padding: 20px;
  border-right: 1px solid #999;
}
<div class="header">Main header</div>
<div class="body">
  <div class="sidebar">Sidebar</div>

  <div class="main">
    <div class="page-header">Page Header. Content columns are below.</div>
    <div class="content">
      <div class="column">Column 1</div>
      <div class="column">Column 1</div>
      <div class="column">Column 1</div>
    </div>
  </div>
</div>

我省略了用于样式设置的代码.你可以在the pen分钟内看到所有的东西.


上面的方法是有效的,但是当content区域的内容溢出时,它会使整个页面滚动.我只想让内容区本身滚动,所以是I added overflow: auto to the content div.

现在的问题是,柱子本身并没有延伸到它们父母的高度,所以边界也被切断了.

Here's the pen showing the scrolling issue美元.

How can I set the 100 area to scroll independently, while still having its children extend beyond the 100 box's height?

推荐答案

我已经和Tab Atkins(Flexbox规范的作者)谈过这个问题,我们得出的结论是:

HTML:

<div class="content">
    <div class="box">
        <div class="column">Column 1</div>
        <div class="column">Column 2</div>
        <div class="column">Column 3</div>
    </div>
</div>

CSS:

.content {
    flex: 1;
    display: flex;
    overflow: auto;
}

.box {
    display: flex;
    min-height: min-content; /* needs vendor prefixes */
}

这是钢笔:

  1. Short columns being stretched
  2. Longer columns overflowing and scrolling

之所以这样做,是因为align-items: stretch不会缩小它的项目,如果它们有一个内在的高度,这里是通过min-content来实现的.

Css相关问答推荐

如何在没有额外间隔的情况下使用Angular Metal chckbox?

如何获得特定位置的Divs以根据浏览器宽度正确调整大小

下一个js app样式刷新页面后不工作页面

如何将React应用程序主页的内容居中?

如何在Delphi的TMS Web Core上向窗体添加背景图像

两列网格中左列第一个文本正下方的按钮

无法在 React 组件 (TypeScript) 中应用 Tailwind CSS 类

根据子索引计算变换 CSS 参数

如何在Safari中隐藏CSS的offset-path属性?CSS支持规则不按预期工作

CSS 不要 Select 包含混合内容的 div 中的第一个元素

SCSS - Lighten/Darken 不编译?

背景上带有文本的按钮的反转 colored颜色

使用 React 和 Flexbox 文本溢出框外

Nativewind 的某些样式不适用于本机 (Android),但它们适用于网络

网格在行方向上的大小不正确

Tailwind Box-shadow

Angular 导航栏问题

将未知大小的大图像居中在一个较小的 div 中,并隐藏溢出

我应该如何组织我的 CSS 文件的内容?

使用没有设置宽度或高度的边界半径的胶囊形状?