Простой модал относительно контейнера div - PullRequest
2 голосов
/ 01 декабря 2011

Я использую simplemodal ( www.ericmmartin.com / projects / simplemodal / ) в нескольких местах для сайта.Мне нужно установить некоторые из них относительно контейнера контейнера div 1000px.Это возможно?Или они могут быть установлены только для тела?

Ответы [ 2 ]

1 голос
/ 01 декабря 2011

Пока ваш простой HTML-элемент является дочерним для контейнера, а указанный контейнер имеет относительное или абсолютное позиционирование, вы можете его снять.

http://www.w3schools.com/cssref/pr_class_position.asp

Редактировать: Так как ваша реальная цель - это пользовательское позиционирование. Просто используйте возможность разработчика, предоставленную в библиотеке, вручную позиционировать модал. Это прямо из документации.

// Manually set position using percentages
$("#sample").modal({position: ["50%","50%"]});

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

Вы можете получить смещение любого элемента, например, так:

var os = $('#selector').offset();
var top = os.top;
var left = os.left;

http://api.jquery.com/offset/

Смещение относительно всего документа, поэтому я считаю, что оно удовлетворит ваши потребности в фиксированном позиционировании.

0 голосов
/ 01 декабря 2011

Этот ответ не является специфичным для simplemodal, а скорее является общим правилом CSS. Если родительским контейнером является position: относительный, тогда дочерние элементы могут быть расположены относительно родительского. Пример:

     <div style="position: relative;">
          <div style="position: absolute; top: -100px; left: -100px;">
               This div is 100 pixels up and left of the parent div
          </div>
     </div>

Надеюсь, это поможет. Удачи.

...