在内部div上设置max-height,以便显示滚动条,但不显示父div

xbo*_*nez 28 html css

我按照下面的代码设置了我的HTML,CSS.我还添加了一个JSFiddle链接,因为看到代码在运行中会更方便.

我遇到的问题是,当#inner-rightdiv中的#right-coldiv中有很多文本时,我想#inner-right 显示一个滚动条.我当前的代码显示了两个滚动条:#inner-div#right-col.如果我改变对CSS #right-coloverflow: hidden,以摆脱外部滚动条的,内滚动条消失的欢迎,并#inner-right不再尊重max-height规则.

如何设置它以使滚动条仅在#inner-right内容变得过大时显示.

的jsfiddle

html, body {
    height: 100%;    
}
#wrapper {
    height: 100%;
    display: table;
    width: 700px;
}
#header, #footer {
    display: table-row;
    height: 30px;
}
#body {
    height: 100%;
    display: table-row;
    background: rgba(255, 0, 0, 0.5);
}
#left-col, #right-col {
    display: inline-block;
    width: 320px;
    height: 100%;
    max-height: 100%;
    margin-right: 20px;
    border: 2px black solid;
    vertical-align: top;
    padding: 3px;
    overflow: auto;    
}
#inner-right {
    height: 100%;
    max-height: 100%;
    overflow: auto;
    background: ivory;
}
Run Code Online (Sandbox Code Playgroud)
<div id="wrapper">
    <div id="header">Header</div>
    <div id="body">
        <div id="left-col">
            Lorem ipsum ... little text
        </div>
        <div id="right-col">
            <div id="header-text">Header</div>
            <div id="inner-right">
            Lorem ipsum ...lots of text
            </div>
        </div>
    </div>
    <div id="footer">Footer</div>
</div>
Run Code Online (Sandbox Code Playgroud)

Too*_*ele 46

如果你做

overflow: hidden在外部div和overflow-y: scroll内部div中它将起作用.

http://jsfiddle.net/C8MuZ/11/

  • 您已将高度硬编码为 300 像素。我不能那样做。我需要将高度设为 100%; (5认同)
  • 那么它真的在没有硬编码高度的情况下工作吗? (2认同)
  • 我有同样的问题 - 问题是让它在没有硬编码高度的情况下工作 (2认同)

Tob*_*oba 5

这会工作得很好,将高度设置为所需的像素

#inner-right{
            height: 100px;
            overflow:auto;
            }
Run Code Online (Sandbox Code Playgroud)