Я столкнулся с той же проблемой и решил, что должен выяснить, что ее вызывает.
Это потому, что они обрабатывают плавающие элементы по-разному, и что дифференцирование должно быть сделано и для встроенного блока.
Попробуйте этот патч:
jQuery.ui.sortable.prototype._create = function() {
var o = this.options;
this.containerCache = {};
this.element.addClass("ui-sortable");
//Get the items
this.refresh();
//Let's determine if the items are floating, treat inline-block as floating as well
this.floating = this.items.length ? (/left|right/).test(this.items[0].item.css('float')) || this.items[0].item.css('display') == 'inline-block' : false;
//Let's determine the parent's offset
this.offset = this.element.offset();
//Initialize mouse events for interaction
this._mouseInit();
};
особенно этот ряд:
this.floating = this.items.length ? (/left|right/).test(this.items[0].item.css('float')) || this.items[0].item.css('display') == 'inline-block' : false;
Это меняет поведение по умолчанию. Это поздний ответ, но я не нашел другого ответа в сети, поэтому подумал, что это поможет многим людям.
Я попытаюсь отправить запрос на исправление для jQuery, который исправляет это, но с 1.8.9 это все еще проблема.