Проблемы с созданием «мертвой точки» в качестве плагина jQuery - PullRequest
0 голосов
/ 01 декабря 2011

Я работаю над очень, очень простым плагином jQuery, который просто меняет положение элемента в центре окна браузера (по горизонтали и вертикали).Часто это называется «мертвой точкой».

jQuery.fn.dead_center = function() {

    var element;

    element = this;

    $(element).css({
        position: 'absolute',
        top: ($(window).height() - $(this).outerHeight()) / 2,
        left: ($(window).width() - $(this).outerWidth()) / 2
    });

}

Тогда у меня есть <div /> с <h1 /> в нем так:

<div class="dead_center">
    <h1>Foo and bars.</h1>
</div>

В конце я называю свою 'Плагин ', как это:

$(function() {

    $('.dead_center').dead_center();

});

Проблема в том, что $('.dead_center') находится только в центре на оси Y.Не по оси X!

Почему это происходит?Не могу распознать мою ошибку.

Спасибо за любой совет!

1 Ответ

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

Значение по умолчанию для div составляет 100% ширины. (Это на самом деле auto, но именно так auto работает для элементов уровня блока). Итак, отцентрировано по горизонтали. Это просто занимает всю горизонтальную область. Дайте div ширину, и вы увидите.

...