2012-01-10 85 views
0

我在相對div內有一個絕對DIV。它本質上是一個位於頁面右上角的絕對定位角橫幅的容器。將絕對DIV定位到相對DIV外的頁面

它適用於Chrome,但不適用於IE。在IE中它似乎絕對定位,但在其容器內。我想,如果可以覆蓋這個,因爲這個網站是建立(在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',但是你的CSS目標是'a'。 – tw16 2012-01-10 01:19:36

+0

嗨,謝謝你的回覆。關於標籤vs div的問題,我只用了div的沙子問題,但是使用了一個標籤來獲得更好的翻轉行爲。 – acseven 2012-01-10 01:32:07

+0

關於ie和相關標籤的預期行爲 - 我明白,但這正是我想要規避的。謝謝! – acseven 2012-01-10 01:33:13

回答

1

這是正確的行爲。相對定位元件內的絕對位置將相對於容納元件絕對定位。

0

你確定父親相對容器是一個div而不是td嗎?

編輯

確定

這不是一個CSS問題,但一個壞的HTML的組織。 所以,如果你想讓你的元素被窗口定位,而不是他的相對父座標,你必須把它放在相對元素之外。

類似的東西:

<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中,而不是表td。 – acseven 2012-01-10 19:25:12

+0

讓我知道如果我的編輯可以幫助你。 – Valky 2012-01-11 05:25:45