나는 꽤 혼란스러워! 이와 함께 :IE에서 자동 높이 요소의 실제 높이 얻기
...
<div id="main">
<div id="content">
<div class="col1">
...COLUMN1 CONTENT GOES HERE...
</div>
<div class="col2">
...COLUMN2 CONTENT GOES HERE...
</div>
</div><!-- #content -->
</div><!-- #main -->
...
이 당신이 보는대로 열은, 나는 두 컬럼의 최대 크기 (플러스 130 x 96 픽셀)에 자신의 컨테이너 요소의 높이를 설정합니다. 그래서 프로토 타입 프레임 워크를 사용하여 :
//fixing column height problem
Event.observe(window,"load",function(){
if(parseInt($('col1').getStyle('height')) > parseInt($('col2').getStyle('height')))
$('main').setStyle({'height' : parseInt($('col1').getStyle('height'))+130+'px'});
else
$('main').setStyle({'height' : parseInt($('col2').getStyle('height'))+130+'px'});
});//observe
그것은 파이어 폭스, 오페라, 사파리 & 크롬에서 좋은 일이지만 컬럼의 실제 높이를 반환하지. IE7 + (IE6에서는 테스트되지 않음)에서는 NaN을 열 높이로 반환합니다.
그 때문에 이것의 찾아 관리했습니다 : 나는 또한 ". $ ('COL1')는 offsetHeight"를 사용했습니다과 각 컬럼의 높이 값으로 0을 반환하는 것
.col1,.col2{"height:auto;"}
.
되는 HTML이 방법으로 스타일된다
#main{
height: 455px;
background: #484848 url(../images/mainbg.png) repeat-x;
}
#content{
/*height:80%;*/
width: 960px;
direction: rtl;
margin-top: 50px;
margin-left: auto;
margin-right: auto;
position: relative;
}
.col1,.col2{
width: 33%;
text-align: right;
margin-left:3px;
padding-right:3px;
line-height:17px;
}
.col1{padding-top:20px;}
.col1 ul{
margin:0;
padding:0;
list-style: url(../images/listBullet.gif);
}
.col1 ul li{
margin-bottom:20px;
}
.col2{
top: 0;
right: 70%;
position: absolute;
}
문제에 대해 어떤 생각하십시오!
업데이트/해결하는 데 3 일이 걸렸으며, 현상금을 낼 위험이 큽니다! 솔루션에 대한
은 this question/answer을 참조하십시오.
우승자처럼 보입니다 ;-p –
두 분 모두 고맙겠지 만 작동하지 않습니다 !!! 이전과 같이 0을 반환합니다. 나는 이걸 통해 극도로 우습다. -0- –
다른 제안? :( –