Размещение Div в любом месте документа и сохранение одинаковой позиции после изменения размера окна

#css #html #resize #position

#css #HTML #изменение размера #должность

Вопрос:

Я чувствую себя новичком, задающим этот вопрос, но, похоже, я не могу найти идеального ответа.

У меня есть карта, и я пытаюсь установить на ней несколько булавок. Карта представляет собой статическое изображение, а контакты — это фоновые изображения div. Чтобы установить контакты в месте моего желания, я устанавливаю его положение на абсолютное и соответствующим образом перемещаю контакты (вверху, слева). Теперь, если размер окна изменится, очевидно, что значки не останутся на карте.

Если я использую% для top и left, пины перемещаются вместе с картой, но расположение пинов слишком специфично. Что-то вроде 56 пикселей, 896 пикселей и т.д. так что процент не помогает.

Есть ли другой способ, которым я могу это сделать? Я бы не возражал против использования jQuery, но если есть способ с помощью CSS, я более чем счастлив.

Вот пример: http://jsfiddle.net/RKyGV/2/show/ Попробуйте изменить размер окна.

Большое спасибо

Ответ №1:

Установите положение: относительное на вашей карте; поместите булавки в качестве дочерних элементов вашей карты с положением: абсолютное. Теперь их координаты указаны относительно карты.

Ответ №2:

Как говорит Антти Хаапала, контакты должны быть дочерними элементами с абсолютным расположением вашей карты с относительным расположением. Вот скрипка, показывающая это.

HTML

 <div id="map">
    <div class="pin">
    </div>
</div>
 

CSS

 #map{
    background:url("http://placehold.it/200x200");
    width:200px;
    height:200px;
    position:relative;
}

.pin {
    background:url("http://placehold.it/16x16/915");width:16px;height:16px;position:absolute;top:150px;left:30px;
}