2017-04-20 75 views
1

我有三個級別的div。 代碼片斷:jsfiddle.net:divs溢出滾動不起作用

<div class="div-container"> 
    <div class="second-level"> 
    <div class="divs">foo</div> 
    <div class="divs">foo</div> 
    <div class="divs">foo</div> 
    <div class="divs">foo</div> 
    <div class="divs">foo</div> 
    <div class="divs">foo</div> 
    <div class="divs">foo</div> 
    <div class="divs">foo</div> 
    <div class="divs">foo</div> 
    <div class="divs">foo</div> 
    <div class="divs">foo</div> 
    <div class="divs">foo</div> 
    <div class="divs">foo</div> 
    <div class="divs">foo</div> 
    </div> 
    <div class="second-level top-40"> 
    <div class="divs">foo</div> 
    <div class="divs">foo</div> 
    <div class="divs">foo</div> 
    <div class="divs">foo</div> 
    <div class="divs">foo</div> 
    <div class="divs">foo</div> 
    <div class="divs">foo</div> 
    <div class="divs">foo</div> 
    </div> 
</div> 

.div-container{ 
    padding: 5px; 
    font-size: 20px; 
    height: 30px; 
    width: 576px; 
    border: solid 2px #a6a29f; 
} 

.second-level{  
    height: 30px; 
    font-size: 14px; 
    position: absolute; 
    width: auto; 
    overflow: auto; 
    box-sizing: border-box; 
} 

.divs { 
    border: solid #ccc 1px; 
    box-sizing: border-box; 
    color: rgb(51, 51, 51); 
    float: left; 
    font-size: 14px; 
    height: 20px; 
    line-height: 20px; 
    width: 50px; 
} 

div { 
    display: block; 
} 

DIV-容器,其具有固定的寬度,包含幾個秒級容器。 這些容器的寬度是動態的。它可能大於或小於div容器的寬度爲。如果二級的寬度大於div容器的 div,應該會出現滾動條(沒有父div的寬度超過)。 嘗試了很多不同的顯示,位置和溢出設置,但沒有成功。 提前謝謝!

P.S.簡單地增加

overflow-x: scroll; 
overflow-y: scroll; 

到DIV-容器做到這一點: I don't want to second-level exceed div-container width 我想這是像我在紅色畫。

+0

檢查這個https://jsfiddle.net/2yte6tty/ –

回答

1

這是有幫助的。樣品下面

.div-container{ 
 
    padding: 5px; 
 
    font-size: 20px; 
 
    height: 60px; 
 
    width: 576px; 
 
    border: solid 2px #a6a29f; 
 
    position: relative; 
 
    overflow-x: scroll; 
 
    overflow-y: scroll; 
 
} 
 

 
.second-level{  
 
    height: 30px; 
 
    font-size: 14px; 
 
    position: absolute; 
 
    box-sizing: border-box; 
 
    display: flex; 
 
} 
 

 
.divs { 
 
    border: solid #ccc 1px; 
 
    box-sizing: border-box; 
 
    color: rgb(51, 51, 51); 
 
    font-size: 14px; 
 
    height: 20px; 
 
    line-height: 20px; 
 
    width: 50px; 
 
} 
 

 
.top-40 { 
 
    top:40px; 
 
}
<div class="div-container"> 
 
    <div class="second-level"> 
 
    <div class="divs">foo</div> 
 
    <div class="divs">foo</div> 
 
    <div class="divs">foo</div> 
 
    <div class="divs">foo</div> 
 
    <div class="divs">foo</div> 
 
    <div class="divs">foo</div> 
 
    <div class="divs">foo</div> 
 
    <div class="divs">foo</div> 
 
    <div class="divs">foo</div> 
 
    <div class="divs">foo</div> 
 
    <div class="divs">foo</div> 
 
    <div class="divs">foo</div> 
 
    <div class="divs">foo</div> 
 
    <div class="divs">foo</div> 
 
    </div> 
 
    <div class="second-level top-40"> 
 
    <div class="divs">foo</div> 
 
    <div class="divs">foo</div> 
 
    <div class="divs">foo</div> 
 
    <div class="divs">foo</div> 
 
    <div class="divs">foo</div> 
 
    <div class="divs">foo</div> 
 
    <div class="divs">foo</div> 
 
    <div class="divs">foo</div> 
 
    <div class="divs">foo</div> 
 
    <div class="divs">foo</div> 
 
    <div class="divs">foo</div> 
 
    <div class="divs">foo</div> 
 
    <div class="divs">foo</div> 
 
    <div class="divs">foo</div> 
 
    </div> 
 
</div>

+0

正是我所需要的!沒有聽說過顯示器:flex屬性。謝謝:) –

+0

快樂它幫助。 :) https://css-tricks.com/snippets/css/a-guide-to-flexbox/ – blecaf

0

你應該儘量把溢出-X:滾動的DIV,容器類

+0

這並不工作 –

+0

你真的需要第二級是絕對的?因爲它的工作沒有它..看看:https://jsfiddle.net/c8wvte7r/7/ – Nastyo

0
.div-container{ 
    padding: 5px; 
    font-size: 20px; 
    height: 60px; 
    width: 576px; 
    border: solid 2px #a6a29f; 
    overflow-x: scroll; 
    overflow-y: scroll; 
} 
+0

這也沒有給予預期的效果 –