В качестве эксперимента я создал несколько div и повернул их с помощью CSS3.
.items {
position: absolute;
cursor: pointer;
background: #FFC400;
-moz-box-shadow: 0px 0px 2px #E39900;
-webkit-box-shadow: 1px 1px 2px #E39900;
box-shadow: 0px 0px 2px #E39900;
-moz-border-radius: 2px;
-webkit-border-radius: 2px;
border-radius: 2px;
}
Затем я случайно создал их и сделал их перетаскиваемыми через jQuery.
$('.items').each(function() {
$(this).css({
top: (80 * Math.random()) + '%',
left: (80 * Math.random()) + '%',
width: (100 + 200 * Math.random()) + 'px',
height: (10 + 10 * Math.random()) + 'px',
'-moz-transform': 'rotate(' + (180 * Math.random()) + 'deg)',
'-o-transform': 'rotate(' + (180 * Math.random()) + 'deg)',
'-webkit-transform': 'rotate(' + (180 * Math.random()) + 'deg)',
});
});
$('.items').draggable();
Перетаскивание работает, но я замечаю внезапный переход, перетаскивая div только в браузерах webkit, в то время как все в порядке в Firefox.
Если я удалю позицию: абсолютный стиль, "прыжок" еще хуже. Я думал, что может быть разница в происхождении преобразования между webkit и gecko, но они оба находятся по центру элемента по умолчанию.
Я уже обыскал, но только придумал результаты о полосах прокрутки или отсортированных списках.
Вот рабочая демонстрация моей проблемы. Попробуйте просмотреть его как в Safari/Chrome, так и в Firefox. http://jsbin.com/ucehu/
Является ли это ошибкой в webkit или как браузеры делают webkit?