2010-07-21 6 views
1

Я продолжаю получать странные результаты в Opera 10.60, пытаясь полностью позиционировать элемент блока внутри элемента встроенного блока.Использование абсолютно позиционированного элемента внутри встроенного блока в Opera

Пример кода:

<html><head><style type="text/css"> 
div.container { 
    position: relative; 
    display: inline-block; 
    padding: 5px 100px; 
    border: 1px solid red; 
} 
div.block { 
    display: block; 
    position: absolute; 
    top: 0px; 
    right: 0px; 
    border: 2px solid brown; 
} 
</style></head><body> 

<div class="container"> 
    <div class="block">(>O.o)></div> 
    Quick brown block <a href="#">jumps</a> over relative div. 
</div> 

</body></html> 

опера позиции .block относительно последнего строкового элемента (в данном примере) внутри одного из родителей (.container), вместо того, чтобы позиционировать его относительно родителя.

Я что-то упускаю, или это просто ошибка, и я должен найти другую дорогу?

+0

какая идея за дисплеем: блок на относительно позиционированном элементе? РЕДАКТОРА: невзирая, я упустил вопрос. Не можете ли вы создать какой-то встроенный элемент (т. Е. Span), чтобы поместить div в? – Robbert

ответ

0

Изменить position: relative; в position: absolute;

, и он будет правильно выровнять себя в браузерах. :)

+0

Это работает, да. Но на моем веб-сайте у меня есть уведомления, которые сделаны с кодом, подобным образцу, и я не могу полностью их упростить без разметки. Похоже, я могу использовать ваш совет и обернуть каждый абсолютно позиционированный контейнер с другим нормально расположенным блоком. Это удвоит длину кода, хотя :-) – smugglerFlynn

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