2013-12-19 3 views
0

우리는 CSS3와 HTML5를 사용하고 있습니다. 일부 그라디언트를 표시 할 div가있는 페이지를 작성하려고합니다. 그런 다음 머리글이오고 머리글 뒤에는 컨테이너가옵니다.콘테이너의 높이

이것은 내가 작성한 것이며 더미 라인을 추가하기 전까지는 잘 작동하고 있습니다.

html { 
    height: 100%; 
} 
body { 
    margin: 0px; 
    height: 100%; 
} 
.container { 
    height: 100%; 
} 
.oss-gradient { 
    height: 5px; 
    min-width: 1024px; 
    background: yellow; 
} 
.header { 
    height: 40px; 
    min-width: 1024px; 
    background: #def; 
} 
.content-wrapper { 
    width: 1024px; 
    height: calc(100% - 45px); 
    background: #defabc; 
    margin: 0px auto; 
} 

내 HTML,

<div class="container"> 
    <div class="oss-gradient"> 
    </div> 
    <div class="header"> 
    </div> 
    <div class="content-wrapper"> 
     <!-- some dummy lines here //--> 
    </div> 
</div> 

가 그럼 난 최소 높이를하는 내용 래퍼의 높이 속성을 변경,

CSS 니펫을 Click here 샘플을 볼 수 이것은 코드입니다. 그런 다음 잘 작동했습니다. 확대/축소 수준과 브라우저 창의 크기를 변경하려고하면 잘 작동합니다. 그런 다음 나는 방화범을 피우고 contianer div, body 및 html 요소를 맴돌았다. 나는 content-wrapper 요소가 container div에서 나왔다. 다시 말해 container, body 및 html은 content-wrapper 요소로 확장되지 않았습니다.

그런 다음 container div에 대한 min-height 속성을 추가하여 wrt content-wrapper를 확장한다고 생각했습니다. 그런 다음 페이지에서 축소하여 내용 래퍼가 사용 가능한 높이를 확장하지 않는 것으로 나타났습니다.

그런 다음 컨테이너의 html, body 및 min-height 속성에서 height 속성을 제거했습니다. 이제 세 가지 요소가 모두 아동에게 확대됩니다. 하지만 모든 더미 라인을 제거하면 내용 래퍼 div가 보이지 않습니다.

어떻게 해결할 수 있습니까?

답변

1

당신은

body { 
    margin: 0px; 
    min-height: 100%; 
} 

당신은 참조 할 수 body 요소 min-height를 사용하고 (더 많은 콘텐츠로) 당신의 html 요소

Demo (커버 전체 페이지)

Demo 2background를 사용할 필요가 비슷한 질문에 대한 내 질문 here.

+0

@ mr-aliien 이것은 내 문제를 해결하지 못합니다. 첫째, 내 사이트는 1024X768 픽셀로 설계되었습니다. 내 콘텐츠 래퍼 div에 대한 배경 정보가 필요한 경우 어떻게해야합니까? 배경을 변경하고 웹 페이지를 확대했습니다. 다시 나는 약간의 문제를 본다. –

+0

@KrishnaChaitanya 내 데모를 봤니? 배경을 옮기기 위해 너무 중복되는 경우 js 솔루션을 사용하는 것보다 콘텐츠 div에 배경을 유지하고 싶다면 –

+0

@ mr-alien : 예. 귀하의 데모를 보았을뿐만 아니라 언급 한 링크를 읽었을 수도 있습니다. 나는 이것을 달성하는 쉬운 방법이 없다는 것을 이해했다. html로 높이를 사용하고 body에서 최소 높이를 사용합니다. 그러면 확대/축소시 몸체가 전체 뷰포트를 확장합니다. 그러나 컨테이너가 뷰포트 높이 또는 몸체 높이를 차지하지 않습니다. 컨테이너와 줌아웃에 배경을 추가하면 추한 것처럼 보입니다. 괜찮아요 작동 괜찮아요 –