It happens because of being webbed/bashed/stunned/etc... An unit ends the combat with 0 move, and your army's move gets set to the minimum of the units' moves.
Whether this is the way the developers want it, I do not know. I personally hate it. But then, I also hate that I need to move twice to attack and loot a lair. I believe that we should have the choice to KILL (approach, fight, move back) or RAID (approach, fight, stay) and they should cost the same (or at least, RAID should cost less, given that KILL has an extra action, at least if looting take as little time as is suggested in the text.