2

我正在构建一个 MDI WEB 应用程序,并有一个由article元素创建的窗口,其中包含 aheader和 asection的内容。由于它是 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%;
}

看起来overflow: auto在 Firefox (v 22) 中被忽略了,但滚动条确实出现在 Chrome 中。

关于在内容部分需要时如何可靠地制作滚动条的任何想法?

4

2 回答 2

3

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

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%;
}
于 2013-08-05T03:17:35.440 回答
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;
}
于 2013-08-05T03:02:29.260 回答