2012-01-10 1 views
0

상대 div 내에 절대 div가 있습니다. 기본적으로 페이지의 오른쪽 상단에 절대 배치 된 모퉁이 배너 컨테이너입니다.상대 DIV 외부 페이지로 절대 DIV 위치 지정

Chrome에서는 잘 작동하지만 IE에서는 제대로 작동하지 않습니다. IE에서는 절대적으로 위치하지만 컨테이너 내부에 위치합니다. 나는 가능하면 인해이 사이트의 (a CMS에 대한 전체 템플릿) 내장되는 방식으로,이를 무시하고 싶습니다 : 읽기 및 입력

#corner-banner a { 
position: absolute; 
right: 0; 
top: 0; 
display: block; 
height: 200px; 
width: 200px; 
background: url(../images/down.png) no-repeat; 
text-indent: -999em; 
text-decoration: none; 
} 

#corner-banner a:hover { 
background: url(../images/up.png) no-repeat; 
} 

감사합니다.

건배!

+0

나는 당신이 무슨 말을하는지 확실히 모르겠다.하지만 웹 사이트가 IE에서해야하는 것처럼 행동하는 것처럼 들린다. 내부 절대 위치 div는 부모 컨테이너의 오른쪽 상단에 있습니까?. 그것은 바로'position : relative'가하는 것과 정확히 같습니다. 절대적으로 설정된 어린이는 페이지가 아닌 해당 컨테이너와 관련이 있음을 의미합니다. 그리고 당신의 묘사에서 당신은'div's에 대해서 이야기하고 있습니다. 그러나 당신의 css는'a'를 목표로 삼고 있습니다. – tw16

+0

안녕하세요, 답장을 보내 주셔서 감사합니다. 태그 대 div의 경우 div의 경우에만 모래 문제가 있었지만 태그를 사용하여 롤오버 동작을 향상 시켰습니다. – acseven

+0

그리고 ie와 상대 태그의 예상되는 동작에 대해 - 나는 이해합니다. 그러나 그것이 내가 우회하려고하는 것입니다. 감사! – acseven

답변

1

올바른 동작입니다. 상대적으로 배치 된 요소 내부의 절대 위치는 포함 요소에 대해 절대적으로 배치됩니다.

0

부모 상대 컨테이너가 div가 아닌 td입니까?

편집

확인

이것은 CSS의 문제가 아니다

하지만 나쁜 HTML 조직. 따라서 상대적인 부모 coordonates가 아닌 창에 의해 요소의 위치를 ​​지정하려면 상대 요소 외부에 배치해야합니다. 그런

뭔가 :

<body> 
    <div id="corner-banner" class="norelative_element"> 
    <!-- Your content with absolute position by the window !--> 
    <a>...</a> 
    </div> 
    <div class="relative_element"> 
    <!-- Your content with relative position !--> 
    </div> 
</body> 
+0

그래, 그것은 div 안의 테이블이 아니야. – acseven

+0

편집 내용이 도움이되는지 알려주십시오. – Valky