2016-05-11 48 views
0

我正在嘗試爲多個尺寸的屏幕設置響應網站,例如自舉尺寸爲xs,sm,mdlg如何讓不需要的滾動條消失?

一切正常工作在三個較小的尺寸,即滾動條只在需要時出現在右側。

然而,大尺寸屏幕,具有1,024像素寬度,這樣它不會過寬,我怎樣才能在需要時垂直滾動條只出現?

較小的尺寸確定: enter image description here

大尺寸具有不需要時不必要的滾動條: enter image description here

.pagecontent { 
 
    margin: 0 18px; 
 
} 
 
/* bootstrap override */ 
 

 
.container { 
 
    width: 100%; 
 
    padding: 0; 
 
} 
 
.navbar { 
 
    border-radius: 0px; 
 
} 
 
.navbar-text { 
 
    float: left !important; 
 
    margin-right: 10px; 
 
} 
 
.navbar-right { 
 
    float: right!important; 
 
} 
 
.navbar-nav>li>a { 
 
    padding-top: 15px; 
 
    padding-bottom: 15px; 
 
} 
 
.navbar-nav { 
 
    margin-bottom: 0; 
 
    margin-top: 0; 
 
    margin-left: 0; 
 
} 
 
.container { 
 
    width: 1024px; 
 
    padding: 0; 
 
    background-color: #fff; 
 
    position: absolute; 
 
    top: 0; 
 
    bottom: 0; 
 
    left: 0; 
 
    right: 0; 
 
    overflow-y: scroll; 
 
} 
 
html { 
 
    min-height: 100%; 
 
    /* make sure it is at least as tall as the viewport */ 
 
    position: relative; 
 
} 
 
body { 
 
    height: 100%; 
 
    /* force the BODY element to match the height of the HTML element */ 
 
    background-color: #999; 
 
}
<!DOCTYPE html> 
 
<html> 
 

 
<head> 
 
    <script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script> 
 
    <meta name="viewport" content="width=device-width, initial-scale=1"> 
 
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"> 
 
    <script src="https://netdna.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script> 
 

 
</head> 
 

 
<body> 
 

 
    <div class="container"> 
 
    <nav class="navbar navbar-inverse"> 
 
     <div class="container-fluid"> 
 
     <div class="navbar-header pull-left"> 
 
      <a class="navbar-brand" href="?">Bootstrap Showcase</a> 
 
     </div> 
 

 
     </div> 
 
    </nav> 
 
    <div class="pagecontent"> 
 

 
     <div>this is a test line</div> 
 
     <div>this is a test line</div> 
 
     <div>this is a test line</div> 
 
     <div>this is a test line</div> 
 
     <div>this is a test line</div> 
 
     <div>this is a test line</div> 
 
     <div>this is a test line</div> 
 
     <div>this is a test line</div> 
 
     <div>this is a test line</div> 
 
     <div>this is a test line</div> 
 
     <div>this is a test line</div> 
 
     <div>this is a test line</div> 
 
     <div>this is a test line</div> 
 
     <div>this is a test line</div> 
 
     <div>this is a test line</div> 
 
     <div>this is a test line</div> 
 
     <div>this is a test line</div> 
 
     <div>this is a test line</div> 
 

 
    </div> 
 
    </div> 
 
</body> 
 

 
</html>

附錄:

如果我刪除overflow-y: scroll,我得到右邊的滾動條,但隨後的內容前下方伸出:

enter image description here

+0

因此,您的屏幕截圖並不完全是由您給我們的代碼產生的....是否有理由使用此包裝,而不是使用'padding'身體「和離開包裝流入? – abluejelly

回答

6

使用overflow-y: auto; CSS屬性。它只會在需要時顯示滾動條

+1

把我的+1留在這裏,因爲這解決了問題的(原始)問題,但並沒有真正解決問題,因爲某人_cough_沒有提供足夠的代碼讓我們意識到這個問題更多。 – abluejelly

+2

沒錯,這就是爲什麼我把這個答案標記爲正確,並在這裏問了一個新問題:http://stackoverflow.com/questions/37167577/how-to-get-text-from-scrolling-off-bottom-of-container-然而,保持滾動條上-F –

0

.container在CSS刪除overflow-y: scroll;。爲什麼你有兩次在CSS中列出的container類?

+0

如果他刪除它,他不會有一個當他想要一個 – RhysO

+0

爲什麼不呢?如果瀏覽器經過頁面,瀏覽器將包含滾動條。 –

+0

我以前做過這樣的事情。 CSS可重用片段(例如,CSS手風琴的引擎)和樣板文件不會受到這種處理,而不會與視覺樣式混雜在一起。但是,這種情況可能僅僅是從「嵌入」外部樣式表。 – abluejelly