Attackers can't just run into defenders and get a foul, it's a contact sport.
that's not vardys job so you're saying because the defender has stood in his way, vardy has to get out of the way?
This is called obstruction. It results in free kicks. Whether the defender has meant to obstruct the player is neither here not there, but it's still a foul. Same goes with the given penalty today. Vardy has no obligation not to be tripped up.