2016-08-25 4 views
1

Я пытаюсь получить тот же эффект, что и здесь: Responsive images positioned over image, поэтому я хочу, чтобы мои абсолютные позиционированные элементы оставались в одном и том же месте, но стали меньше или больше, когда размер браузера. Я пробовал много разных возможностей, прежде чем я работал с этим кодом, но я не понимаю, почему мой контейнер упаковки (id = «обертка») помещается под изображение. И чтобы получить вопросительный знак на изображении, мне нужно будет использовать минус-процент. В примере, который я скопировал из другого вопроса в stackoverflow, есть стили бутстрапа. Я не знаю, но я не хочу использовать bootstrap. Я буду очень благодарен за все предложения, что я делаю неправильно.Абсолютное позиционирование элемента в ответном заголовке

#wrapper { 
    position: relative; 
    display: inline; 
} 
#questionMark { 
    position:absolute; 
    left:33%; 
    top:-43%; 
    max-width: 10%; 
} 

Это моя скрипка: https://jsfiddle.net/8obzf2c8/2/

+0

IMG { макс-ширина: 300px; ширина: 100%; высота: авто; } – Elena

ответ

1

Ваша обертка имеет свойство display: inline; так вести себя, как фе. span элемент, это не блок.

Изменить display: inline; на display: inline-block; так, чтобы обертка вела себя как встроенный контейнер. Вам также нужно будет изменить этот странный top: -43%; на fe. top: 43%, поскольку все станет более нормальным и предсказуемым.

+0

Он работал именно так, как я хотел, чтобы он работал. Спасибо! – Sara

1

Использование display:inline-block; вместо inline

#wrapper { 
position: relative; 
display: inline-block; 
} 
#questionMark { 
position:absolute; 
left:33%; 
top:43%; 
max-width: 10%; 
} 
2

inline элементы не получить высоту элементов внутри них.
Вы должны удалить display: inline с элемента #wrapper.

#wrapper { 
 
    position: relative; 
 
    margin-top: 150px; 
 
} 
 
#questionMark { 
 
    position:absolute; 
 
    left:33%; 
 
    top:-43%; 
 
    max-width: 10%; 
 
}
<div id=wrapper> 
 
    <img src="http://e.allegroimg.pl/s400/19/53/89/71/60/5389716014"/> 
 
    <img id="questionMark" src="https://image.freepik.com/free-icon/speech-bubble-with-question-mark_318-78800.png"/> 
 
</div>

Я также установил margin-top, чтобы убедиться, что знак вопроса в окне просмотра.

1

Это сделает изображение размещенным в центре, а также будет реагировать на все размеры экрана.

#wrapper { 
 
position: relative; 
 
display: inline-block; 
 
} 
 

 
img{ 
 
width: 100%; 
 
height: auto; 
 
} 
 

 
#questionMark { 
 
position: absolute; 
 
left: 50%; 
 
top: 50%; 
 
transform: translate(-50%, -50%); 
 
max-width: 10%; 
 
}
<div id=wrapper> 
 
    <img src="http://e.allegroimg.pl/s400/19/53/89/71/60/5389716014"/> 
 
    <img id="questionMark" src="https://image.freepik.com/free-icon/speech-bubble-with-question-mark_318-78800.png"/> 
 
</div>

Надеется, что это помогает,

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

  • Нет связанных вопросов^_^