2014-10-28 3 views
0

오버플로가있는 더 작은 DIV 안에 두 개의 DIV가 나란히 놓 이려고합니다. 두 DIV가 나란히있을 것으로 예상되며 일부는 너비가 더 작은 부모 DIV에 의해 숨겨진 콘텐츠로 표시됩니다. 대신 마지막 DIV는 다른 DIV에서도 움직입니다. 둘 다 float : left;가 있습니다.작은 DIV에 2 개의 DIV가 나란히 나란히

HTML :

<div id="wrapper"> <!-- wrapper --> 
    <div id="nav"> <!-- nav --> 

    </div> <!-- /nav --> 
    <div id="container"> <!-- container --> 

    </div> <!-- /container --> 
</div> <!-- /wrapper --> 

CSS :

#wrapper { 
    float:left; 
    height:960px; 
    width:540px; 
    background-color:#eeeeee; 
    overflow:hidden; 
} 

#nav { 
    float:left; 
    width:460px; 
    height:960px; 
    background-color:red; 
} 

#container { 
    float:left; 
    width:540px; 
    height:960px; 
    background-color:green; 
} 

이 내가 원하는 효과는 다음과 같습니다

Mobile UI example

+0

#의 항법 DIV 항상 같은 폭이 있습니까? – RMo

+0

아니요, # 래퍼와 동일한 너비를 갖습니다. -60px –

+0

내가 원하는 결과로 이미지를 게시했습니다. –

답변

1

당신이 두 가지 요소가 나란히, 당신이 둘러싸고 어떤 종류의 추가 "래퍼"요소를 추가 할 수 있다고 생각합니다 당신의 #nav#container 요소. (당신이 요소가 서로 옆에 볼 수 있도록 오버 플로우가 자동으로 설정합니다.)

예 :

#wrapper { 
 
    float: left; 
 
    height: 960px; 
 
    width: 540px; 
 
    background-color: #eeeeee; 
 
    overflow: auto; 
 
} 
 
#wrap { 
 
    width: 1000px; 
 
} 
 
#nav { 
 
    float: left; 
 
    width: 460px; 
 
    height: 960px; 
 
    background-color: red; 
 
    clear: 
 
} 
 
#container { 
 
    float: left; 
 
    width: 540px; 
 
    height: 960px; 
 
    background-color: green; 
 
}
<div id="wrapper"> 
 
    <!-- wrapper --> 
 
    <div id="wrap"> 
 
    <!-- some new wrapping element --> 
 
    <div id="nav"> 
 
     <!-- nav --> 
 

 
    </div> 
 
    <!-- /nav --> 
 
    <div id="container"> 
 
     <!-- container --> 
 

 
    </div> 
 
    <!-- /container --> 
 
    </div> 
 
</div> 
 
<!-- /wrapper -->

+0

지금, # 컨테이너가 왼쪽으로 이동하여 #nav 뒤에 있습니다. :/ –

+0

나는 원하는 결과로 이미지를 게시했습니다. –

+0

나는 당신이 찾고 있다고 생각하는 것을 기반으로 내 대답을 업데이트했습니다 - 희망이 도움이됩니다! – wahwahwah

1

나는 아이 display: inline-block를 사용하여, 포장을 방지 좋을 것 <div> 요소를 사용하고컨테이너에:

#wrapper { 
 
    float: left; 
 
    height: 300px; 
 
    width: 300px; 
 
    background-color: #eeeeee; 
 
    overflow: hidden; 
 
    /* prevents content wrapping to a new line */ 
 
    white-space: nowrap; 
 
} 
 
#nav { 
 
    display: inline-block; 
 
    width: 400px; 
 
    height: 960px; 
 
    background-color: red; 
 
    /* purely to move the first element to the left, 
 
    to show that both elements are on the same line: */ 
 
    margin-left: -200px; 
 
} 
 
#container { 
 
    display: inline-block; 
 
    width: 400px; 
 
    height: 960px; 
 
    background-color: green; 
 
}
<div id="wrapper"> 
 
    <!-- wrapper --> 
 
    <div id="nav"> 
 
    <!-- nav --> 
 

 
    </div> 
 
    <!-- /nav --> 
 
    <div id="container"> 
 
    <!-- container --> 
 

 
    </div> 
 
    <!-- /container --> 
 
</div> 
 
<!-- /wrapper -->

+0

고마워,하지만이 dosen't 내 문제를 해결하는 것, 내가 언급하지 않았어 내가 어떤 전화 브라우저에서 작동하도록, 그래서 컨테이너의 너비와 높이가 화면의 크기에 따라 자바 스크립트로 조정됩니다 #nav가 표시 될 때 #container DIV를 옆으로 밀어 넣기를 원합니다. –

+0

예; 두 가지를 서로 옆에두면 일어날 것입니다. 그래서'margin-left'를 사용하여'# nav' 엘리먼트를 왼쪽으로 이동하십시오. –

+0

내가 원하는 결과로 이미지를 게시했습니다. –

관련 문제