Index: wp-includes/js/media-views.js
===================================================================
--- wp-includes/js/media-views.js	(revision 23040)
+++ wp-includes/js/media-views.js	(working copy)
@@ -3167,9 +3167,16 @@
 
 				// Record the initial `index` of the dragged model.
 				start: function( event, ui ) {
+					$(this).sortable('option', 'cursorAt', {top: ui.item.height() / 2, left: ui.item.width() / 2});
+					ui.item.data('original-margin', ui.item.css('margin'));
+					ui.item.css('margin', 0);
 					from = ui.item.index();
 				},
 
+				stop: function( event, ui ) {
+					ui.item.css('margin', ui.item.data('original-margin'));
+				},
+
 				// Update the model's index in the collection.
 				// Do so silently, as the view is already accurate.
 				update: function( event, ui ) {
