2012-01-10 4 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; 
} 

Спасибо за чтение и для любого входа.

Cheers!

+0

Я не совсем уверен, что вы говорите, но похоже, что веб-сайт ведет себя так, как должен в IE. Внутренний абсолютный позиционный div находится в верхнем правом углу родительского контейнера ?. Это именно то, что делает «позиция: относительная». Это означает, что дети устанавливаются в абсолютный, будет относиться к этому контейнеру, а не к странице. И в вашем описании вы говорите о 'div', но ваши css цели' a''s. – tw16

+0

Привет, спасибо за ответ. Что касается тега vs div, у меня была проблема с песком только с div, но использовалась метка для лучшего, т.е. поведения опрокидывания. – acseven

+0

И о ожидаемом поведении то есть относительных тегов - я это понимаю, но это именно то, что я пытаюсь обойти. Благодаря! – acseven

ответ

1

Это правильное поведение. Абсолютное положение внутри относительно расположенного элемента будет абсолютно расположено относительно содержащего элемента.

0

Вы уверены, что родительский относительный контейнер является div, а не td?

EDIT

нормально

Это не проблема 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

+0

Дайте мне знать, если мое редактирование поможет вам. – Valky

Смежные вопросы