div의 블록 모델을 이해하십시오. 사용할 수있는 전체 너비가 필요합니다. 이 작동 방식 :
.container {
width: 1000px;
margin: 0px auto;
/*display:table;*/
position:relative;
}
#left {
width: 600px;
display:inline-block;
/*float:left;*/
position:absolute;
left:0;
}
#right {
background-color:rgba(0,0,0,0.2);
-webkit-box-shadow: 0 0 10px rgba(0,0,0,0.1);
-moz-box-shadow: 0 0 10px rgba(0,0,0,0.1);
-o-box-shadow: 0 0 10px rgba(0,0,0,0.1);
box-shadow: 0 0 10px rgba(0,0,0,0.1);
width: 400px;
border-radius: 3px;
display:inline-block;
/*float:right;*/
position:absolute;
right:0;
}
주석 처리 된 줄은 작동하는 또 다른 방법입니다.
내가 뭘 했니?.
- 컨테이너 만들기,이 div의 절대 위치에있는 자식은이 위치에 상대적으로 배치됩니다.
-
make display : 인라인 블록; 왼쪽과 오른쪽 블록, 그래서 그것은 필요한 너비와 dont 취소하거나 서로 겹칩니다.
너비를 설정하는 경우에는 필요하지 않습니다.
- 오른쪽에서 왼쪽으로 0으로 오른쪽 위치를 만들고 왼쪽에서 0으로 만듭니다.
UPDATE
지금 가장 좋은 방법은 block formatting context을 실행하는 데라고 생각합니다. #left
을 왼쪽으로 flood하고 #right
으로 만들거나 overflow:auto;
대저택이나 눈에 보이는 것 이외의 다른 것을 지정하십시오. IE6에서는 hasLayout이라는 것을 트리거 할 필요가 있으므로 부인에게주세요.
[JS Fiddle] (http://jsfiddle.net/)은 [HTML *와 * CSS를 함께 둘 수 있습니다] (http://jsfiddle.net/davidThomas/QJFGm/) . 데모는 [SSCCE (짧은, 자체 포함, 올바른/편집 가능한, 예제) 원칙] (http://sscce.org/)에 따라 줄이십시오. –