Проблема с background-position с px в Firefox 4 - PullRequest
1 голос
/ 11 апреля 2011

Я позиционирую фоновый спрайт и меняю положение при наведении курсора (используя jQuery), и он работает, как и ожидалось, в Chrome, IE (8) и Safari (я на ПК, Win 7), но явозникли проблемы с Firefox (4).Ничего не происходит, и в консоли ошибок я получаю это:

Предупреждение: ошибка при разборе значения для 'background-position'.Объявление сброшено.

Я изначально позиционирую фон следующим образом:

background-position: bottom left;

и изменяю позицию при наведении так:

$(document).ready(function () {

var bgPos = 'bottom left';

        $("#nav-01").hover(function () { $('.nav-wrap').css('background-position', '-787px left'); }, function () { $('.nav-wrap').css('background-position', bgPos); });
        $("#nav-02").hover(function () { $('.nav-wrap').css('background-position', '-656px left'); }, function () { $('.nav-wrap').css('background-position', bgPos); });
        $("#nav-03").hover(function () { $('.nav-wrap').css('background-position', '-525px left'); }, function () { $('.nav-wrap').css('background-position', bgPos); });
        $("#nav-04").hover(function () { $('.nav-wrap').css('background-position', '-394px left'); }, function () { $('.nav-wrap').css('background-position', bgPos); });
        $("#nav-05").hover(function () { $('.nav-wrap').css('background-position', '-263px left'); }, function () { $('.nav-wrap').css('background-position', bgPos); });
        $("#nav-06").hover(function () { $('.nav-wrap').css('background-position', '-132px left'); }, function () { $('.nav-wrap').css('background-position', bgPos); });
        $("#nav-07").hover(function () { $('.nav-wrap').css('background-position', '-1px left'); }, function () { $('.nav-wrap').css('background-position', bgPos); });

    });

Для отладки Iпопытался изменить '- 787px left' на 'top left' , и это сработало, поэтому проблема заключается в расположении фона с использованием px в Firefox?Это ошибка (фича ... хе-хе) или я просто что-то делаю не так ...?(Я также пытался использовать em и%, но ничего не получалось.)

1 Ответ

3 голосов
/ 11 апреля 2011

-787px является абсолютно допустимым значением для background-position.Тем не менее, вы смешиваете порядок: горизонтальный на первом месте.Это может быть проблемой.Попробуйте перевернуть значения:

left -787px 
...