2016-09-01 2 views
0
나는 박스/프레임이 제자리에 유지 박스형 레이아웃, 그 안에 내용 스크롤을 만들 싶습니다

만들기. 그러나 난 그 패널에 패널 스크롤 막대가있는 구식 스크롤 프레임 방법을 사용하고 싶지 않습니다.박스형/프레임 레이아웃

이와 비슷한 내용을 달성하고 싶습니다.>https://pixelgrade.com/demos/themes/?product=border -이 목적으로 콘텐츠를 무시하지만 원하는대로 흰색 프레임/테두리를 볼 수 있습니다. 그리고 창에는 프레임 자체가 아닌 표준 스크롤 막대가 있습니다.

나는 빨간 쐐기 인 경우 무언가 link sticky-kit.js 그러나 사과를 사용해야 할 것 같아요.

사람은 내 검색을 시작해야하는지에 대한 올바른 방향으로 날 지점 수 있습니다. 당신이 요청하기 전에, 나는

+0

당신이 적어도 시도 자신이 코딩 할 것으로 예상된다. 스택 오버플로는 코드 작성 서비스가 아닙니다. 나는 당신이 [** 추가 연구 **] (http://meta.stackoverflow.com/questions/261592/how-much-research-effort-is-expected-of-stack-overflow-users) Google을 통해 또는 SO를 검색하여 시도하고 시도하십시오. 문제가 계속되면 ** 코드 **로 돌아와서 시도한 내용과 작동하지 않은 이유를 설명하십시오. –

답변

1

나는 당신의 상자 테두리를 만들려면 가장자리를 따라 몇 가지 고정 된 div를 사용하고 생각할 수있는 간단한 일이 :)이 나 자신을 찾기 위해 노력했다.

.container { 
 
    border: 1px solid red; 
 
    width: 100%; 
 
} 
 
.content { 
 
    height: 1000px; 
 
    background-color: lightblue; 
 
    padding: 50px; 
 
} 
 
.top { 
 
    background-color: white; 
 
    height: 40px; 
 
    position: fixed; 
 
    width: 100%; 
 
    top: 0; 
 
} 
 
.left { 
 
    background-color: white; 
 
    width: 40px; 
 
    position: fixed; 
 
    height: 100%; 
 
    left: 0; 
 
    top: 0; 
 
    bottom: 0; 
 
} 
 
.right { 
 
    background-color: white; 
 
    width: 40px; 
 
    position: fixed; 
 
    height: 100%; 
 
    right: 0; 
 
    top: 0; 
 
    bottom: 0; 
 
} 
 
.bottom { 
 
    background-color: white; 
 
    height: 40px; 
 
    position: fixed; 
 
    width: 100%; 
 
    bottom: 0; 
 
}
<section class="container"> 
 
    <section class="content"> 
 
    this is my content... 
 
    </section> 
 
    <div class="top"></div> 
 
    <div class="left"></div> 
 
    <div class="right"></div> 
 
    <div class="bottom"></div> 
 
</section>

여기 (배경 화상을 표시하기 위해서) 경계가 투명 할 수있는 다른 해결책이다. 내부 div의 스크롤바를 단순히 숨기는 작은 해킹입니다. 이 대안을 사용하기로 결정한 경우 표시되는 스크롤 막대가 없으므로 페이지에 더 많은 콘텐츠가 있음을 확인하는 것이 좋습니다.

body, 
 
html { 
 
    margin: 0; 
 
    padding: 0; 
 
} 
 

 
.container { 
 
    background-image: url('https://upload.wikimedia.org/wikipedia/commons/c/cc/ESC_large_ISS022_ISS022-E-11387-edit_01.JPG'); 
 
    background-repeat: no-repeat; 
 
    background-attachment: fixed; 
 
    background-position: center; 
 
    background-size: cover; 
 
    position: absolute; 
 
    top: 0; 
 
    bottom: 0; 
 
    left: 0; 
 
    right: 0; 
 
} 
 

 
.wrapper { 
 
    position: absolute; 
 
    top: 40px; 
 
    bottom: 40px; 
 
    left: 40px; 
 
    right: 40px; 
 
    background-color: lightblue; 
 
    overflow: hidden; 
 
} 
 

 
.wrapper2 { 
 
    overflow-y: scroll; 
 
    position: absolute; 
 
    top: 0; 
 
    bottom: 0; 
 
    left: 0; 
 
    right: 0; 
 
    margin-right: -20px; 
 
    padding: 20px; 
 
} 
 

 
.content { 
 
    height: 1000px; 
 
}
<div class="container"> 
 
    <div class="wrapper"> 
 
    <div class="wrapper2"> 
 
     <div class="content"> 
 
     This is my content... 
 
     </div> 
 
    </div> 
 
    </div> 
 
</div>

+0

이 방법은 단색 배경 (이 경우 흰색)을 사용하는 경우에만 작동합니다. 콘텐츠 상자 뒤에 전체 너비 캔버스 이미지를 사용하려면 다른 방법이 필요합니다. 난 당신이 후 정확히 모르겠어요 겨울 – Mike

+0

비록 당신의 아이디어 주셔서 감사합니다,하지만 어떻게 이런 식으로 뭔가에 대해 : 자신이 이미 무엇인지와 같은 https://jsfiddle.net/82snax84/ – Winter

+0

덕분에 겨울을, 내가 뭔가를 만들었다 그러나 컨테이너가 바닥에 닿는 것을 막기 위해 매우 비슷합니다. 그래서 항상 콘텐츠 주위에 완벽한 '프레임'을 제공해야합니다. – Mike