What the person is doing
Users need to move, copy, reorder, assign, group, place, or change status for cards, files, tiles, rows, objects, layers, widgets, or records.
Application · lesson 9 of 15 · Cross-Device And Physical Interaction
Underlying principle: The same outcome may cross touch, camera, voice, keyboard, sensors, and offline moments. Design each transition as part of the task rather than a separate surface.
Design drag and drop as a complete movement contract: explicit pickup, drag preview, valid targets, insertion feedback, drop result, cancellation, constraints, recovery, and equivalent non-drag move controls that produce the same outcomes.
The same outcome may cross touch, camera, voice, keyboard, sensors, and offline moments. Design each transition as part of the task rather than a separate surface.
Users need to move, copy, reorder, assign, group, place, or change status for cards, files, tiles, rows, objects, layers, widgets, or records.
Design drag and drop as a complete movement contract: explicit pickup, drag preview, valid targets, insertion feedback, drop result, cancellation, constraints, recovery, and equivalent non-drag move controls that produce the same outcomes.
Idle state with draggable object identity and visible drag handle or move affordance.
What object or selected set is being moved, and where is the source shown during drag?
The source object remains identifiable during drag through a preview, ghost, placeholder, or selected-set label.
Users need to move, copy, reorder, assign, group, place, or change status for cards, files, tiles, rows, objects, layers, widgets, or records.
Open the working example, try its controls, and compare the behavior against the decision guidance.
Users need to move, copy, reorder, assign, group, place, or change status for cards, files, tiles, rows, objects, layers, widgets, or records.
Design drag and drop as a complete movement contract: explicit pickup, drag preview, valid targets, insertion feedback, drop result, cancellation, constraints, recovery, and equivalent non-drag move controls that produce the same outcomes.
Idle state with draggable object identity and visible drag handle or move affordance.
A card can only be moved by mouse drag.
Provide keyboard, screen reader, switch, and visible-control paths for moving objects to every valid destination.
Mozilla - checked
Supports general browser drag source, drop target, feedback, and release-to-drop behavior.
W3C WAI - checked
Supports providing a non-drag single-pointer alternative for dragging movement functionality.
World Wide Web Consortium - checked
Supports cancellation, confirmation, and undo expectations for drag-and-drop actions.
Trello - checked
Supports drag-and-drop card movement across board lists as a product example.
W3C WAI - checked
Supports target size and spacing expectations for drag handles, drop targets, and equivalent controls.
Source trail checked: