2014-01-09 3 views
0

두 개의 div 컨테이너가 있습니다. 왼쪽 컨테이너는 화면 왼쪽 절반을 덮고 오른쪽 컨테이너는 오른쪽 절반을 차지합니다. 두 용기 내부 I은 텍스트 박스가 가로 정렬되어야 할 변수 높이높이가 서로 다른 두 div의 콘텐츠를 정렬하는 방법은 무엇입니까?

.leftcontainer{ 
    position: relative; 
    float:left; 
    width:60%; 
    height:100%; 
} 
.rightcontainer{ 
    position: relative; 
    float: right; 
    width:40%; 
    height:100%; 
} 
.textbox{ 
    margin-top: 50%; 
    width: 100%; 
    background:#333333; 
} 
<div class="leftcontainer"> 
    <div class="textbox">Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore 
    </div> 
</div> 
<div class="rightcontainer"> 
    <div class="textbox">Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore 
    </div> 
</div> 

와 텍스트 상자이다 모두 50 %의 높이에서 시작한다. 그러나 나는 leftcontainer와 rightcontainer의 폭을 둘 다 50 %로 설정 한 경우에만 정렬됩니다.
내가

.leftcontainer{width:60%;} 
.rightcontainer{width:40%;} 

을 할 경우 적절한 텍스트 상자가 이동합니다. 누군가가 저에게이 문제를 해결하는 방법을 알려 줄 수 있습니까? 고맙습니다.

+0

당신은 다른 접근 방식에 반대 했는가? http://jsfiddle.net/CnJXa/ – TimSPQR

+1

백분율이 사용되면 'margin-top'은 높이가 아닌 계산할 부모 폭의 ** 너비 **를 사용합니다. [WebPlatform doc] (http://docs.webplatform.org/wiki/css/properties/margin-top#Values), [W3 doc] (http://www.w3.org/TR/CSS2/box.html) # margin-properties). – Passerby

답변

0

는 창 전체 가시 높이에 걸쳐 용기를 사용하는 경우, 이것은 상기도 1/100 나타내는 단위이다 vh%에서 heightmargin-top 유닛을 스위칭함으로써 달성하기 쉽다 - 포트 높이.

.leftcontainer{ 
    position: relative; 
    float:left; 
    width:60%; 
    height:100vh; 
} 
.rightcontainer{ 
    position: relative; 
    float: right; 
    width:40%; 
    height:100vh; 
} 
.textbox{ 
    margin-top: 50vh; 
    width: 100%; 
    background:#333333; 
} 

http://jsbin.com/ahAfUba/1/edit?html,css,output

+0

'vh '를 사용하면 IE <= 8, 대부분의 Android, Opera Presto 및 일부 이전 Safari를 삭제합니다. http://caniuse.com/#feat=viewport-units – Passerby

관련 문제