2013-02-28 1 views
3

완벽하게 표시되도록 div를 코딩했습니다. 올바른 div는 서로 위/아래에 있으며 페이지의 전체 너비에 걸쳐 있습니다. 제가 발견 한 것은 페이지의 전체 높이에 걸쳐 있지 않다는 것입니다. 어떤 충고라도 대단히 감사하겠습니다! 또한, 나는 멀리 가고 싶을 수평 스크롤 막대가 있습니다. :)CSS - 페이지의 전체 높이를 스팬으로 분할합니다.

CSS :

body { 
    color: #333; 
    font-size: 11px; 
    font-family: "Myriad Pro", Arial, Helvetica, Arial, 'DejaVu Sans', 'Liberation Sans', Freesans, sans-serif; 
    position: relative; 
} 

.container_16 { 
    margin-left: auto; 
    margin-right: auto; 
    width: 960px; 
    margin-top:0px; 
    padding-top:0px; 
     min-height:800px; 
    background-image:url(../images/Content_bkg.gif); 
     box-shadow: 0px 0px 15px rgb(0,0,0); 
    -webkit-box-shadow: 0px 0px 15px rgb(0,0,0); 
} 
.container_24 { 
    background-image: url(../images/headerFooter_bkg.gif); 
    height: 60px; 
    margin: 0px; 
    padding: 0px; 
    border: 1px solid rgb(71, 89, 32); 
    box-shadow: 0px 0px 15px rgb(0,0,0); 
    -webkit-box-shadow: 0px 0px 15px rgb(0,0,0); 
    position:relative; 
    width:100%; 
} 

HTML :

<body> 
     <div class="container_24"> 
      <div class="grid_16"> 
       <input type="text" value="Username" /><input type="text" value="Password" /><input type="button" value="Submit" /><span class="mainLink">Register</span> 
      </div> 
     </div> 
     <div class="container_16"> 
      <form id="form1" runat="server"> 
       <asp:ContentPlaceHolder ID="Body" runat="server"> 

       </asp:ContentPlaceHolder> 
      </form> 
     </div> 
     <div class="container_24"></div> 

</body> 

UPDATE : 이 내 코드는 아래에 제공 래퍼 개념 모습입니다.

.wrapper{ 
    height:100%; 
} 

.container_16 { 
    margin-left: auto; 
    margin-right: auto; 
    width: 960px; 
    margin-top:0px; 
    padding-top:0px; 
    background-image:url(../images/Content_bkg.gif); 
     box-shadow: 0px 0px 15px rgb(0,0,0); 
    -webkit-box-shadow: 0px 0px 15px rgb(0,0,0); 
} 
.container_24 { 
    background-image: url(../images/headerFooter_bkg.gif); 
    height: 60px; 
    margin: 0px; 
    padding: 0px; 
    border: 1px solid rgb(71, 89, 32); 
    box-shadow: 0px 0px 15px rgb(0,0,0); 
    -webkit-box-shadow: 0px 0px 15px rgb(0,0,0); 
    position:relative; 
    width:100%; 
} 

HTML :

<body> 
    <div class="wrapper"> 
     <div class="container_24"> 
      <div class="grid_16"> 
       <input type="text" value="Username" /><input type="text" value="Password" /><input type="button" value="Submit" /><span class="mainLink">Register</span> 
      </div> 
     </div> 
     <div class="container_16"> 
      <form id="form1" runat="server"> 
       <asp:ContentPlaceHolder ID="Body" runat="server"> 

       </asp:ContentPlaceHolder> 
      </form> 
     </div> 
     <div class="container_24"></div> 
     </div> 
</body> 

스크린 샷 : 당신이 명시 적으로 각 컨테이너에 height을 준

enter image description here

+1

첫 번째 힌트를 내놓았다 : 보라. 디버깅하는 것이 고통스럽고 지저분한 코드를 만듭니다. 'container_16'에 대한 CSS 정의가 있지만 해당 div에 인라인 스타일이 있습니다. –

+0

고마워요. 나는 심지어 거기에 넣는 것을 잊어 버렸습니다. :) 나는 그것을 제거하고 위의 내 코드를 업데이 트하고 있습니다. – Yecats

답변

2

는 유일한 방법은 가지고 (시각적으로) 전체 높이가 묶어야하는 것 height: 100% 또는 유사 함을 포함하는 랩퍼의 모든 것

편집 : 설명 예 : 위의 예에서

<body> 
    <div id="wrapper"> 
    <!--Your stuff here--> 
    </div> 
</body> 

는, 래퍼는 100 % 높이 아닌 내용을 가져옵니다.

+0

몸체와 컨테이너 16에 높이 100 %를 반영하도록 코드를 변경하면 컨테이너 16은 뷰에서 완전히 사라집니다. – Yecats

+0

나는 그것을 일찍 시도했었다 - 또한 그것을 고치지 않았다. (위에서 설명한 것과 같은 결과). 명확하게하기 - 래퍼의 높이가 100 %이고 컨테이너 16의 높이가 100 %입니다 – Yecats

0

페이지의 높이를 얻으려면 자바 스크립트를 사용하는 것이 좋습니다. 그런 다음 컨테이너 당 몇 가지 수학을 수행하여 페이지를 채우기 위해 높이와 컨테이너의 정확한 비율을 얻습니다.

+0

이 경우 자바 스크립트가 필요하지 않습니다. 나는 이것이 비효율적 인 권고라고 생각할 것이다. – Axel

+0

그럼 내가 그 질문을 오해해야합니다. –

관련 문제