无法在溢出时出现滚动条

时间:2013-08-05 02:48:51

标签: css dynamic web-applications scrollbar overflow

我正在构建一个MDI WEB应用程序,并创建一个由article元素创建的窗口,其内容为headersection。由于它是MDI应用,因此article设置为absolute,因此它可以与其他窗口重叠。我需要滚动条显示在内容部分中,但不能显示在header

<article id="win3">
    <header> … </header>
    <section> … </section>
</article>

CSS:

article {
    position: absolute;
    min-width: 500px;   
    width: 918px;
    margin: 0px;
    padding: 0px;
    overflow: hidden; 
    background-color: white;
    border-style: ridge;
    border-color: #ddd;
    border-width: 4px;
}
article>section {
    /* reduce diameter of rounded corner to match the inside curve of the border */
    border-radius: 10px;
    -moz-border-radius: 10px;
    display: block;
    overflow: auto;
    border: none;
    width: 100%;
    background-color: white;
    padding: 10px 10px 10px 20px;
    min-height: 50px;
    height: 100%;
}

在Firefox(第22版)中似乎忽略了overflow: auto,但滚动条确实出现在Chrome中。

如何在内容部分中根据需要可靠地制作滚动条?

2 个答案:

答案 0 :(得分:3)

您的关键问题是填充值,因此您需要在文章中设置宽度减少一定百分比&gt;部分

article>section {
    /* reduce diameter of rounded corner to match the inside curve of the border */
    border-radius: 10px;
    -moz-border-radius: 10px;
    display: block;
    overflow: auto;
    border: none;
    /*width: 100%;*/
    width: calc(100% - 30px) /* or set fixed width percentage like 90% */
    background-color: white;
    padding: 10px 10px 10px 20px;
    min-height: 50px;
    height: 100%;
}

答案 1 :(得分:0)

article {
    position: absolute;
    min-width: 500px;   
    width: 918px;
    margin: 0px;
    padding: 0px;
    overflow: hidden; 
    background-color: white;
    border-style: ridge;
    border-color: #ddd;
    border-width: 4px;
    height:100px;
}
article>section {
    /* reduce diameter of rounded corner to match the inside curve of the border */
   overflow:auto;
   height:100%;
   border:none;
   display: block;
   padding: 10px 10px 10px 20px;
    min-height:50px;
}