Image in spoiler. Surely for an offside to be called the interference has to be when the Villa player heads the ball, what happens before then is irrelevant (unless we're asking for a foul rather than offside). When the scorer actually heads the ball, he's not in front of De Gea, blocking his view or obstructing him from diving towards his near post which is where the goal was scored. His arm is outstreched near De Gea but he's not actually got hold of De Gea as far as I can tell from the video footage (again, we're talking when the header was made).
If he has got hold of De Gea's shirt or barged him causing him to lose balance for example, that would be a foul, offside would be irrelevant as it's a free kick for grappling with our keeper anyway. However I've not seen anyone asking for a foul.
I definitely think we have a good case for offside in that he's close enough to the keeper to be causing a distraction, but I think we'd have to apply the same logic to the Lingard situation in that he's literally right in front of the keeper even if he's on the floor. Can you really lie down on the floor in front of the keeper and claim it's not interfering because "well the keeper can still see the ball in his eyeline". Imagine if a team had a player go lie down in the 6 yard box purposely for a period of time and there were several shots taken at the goalkeeper during that time, would we expect the ref to just let this go as the keeper can technically still see the ball fine? When he's got a player lay down directly in front of him, 2 yards away?
I do agree with the argument that Lingard is only on the floor because he's been put there by a defender after he's passed to Ronaldo, so it's definitely a weird situation where you have to maybe say that their foul negates the offside or you have to give us a somewhat soft penalty. It's a bit of a minefield.