Why did Idris Elba play Heimdall in Thor?

Heimdall is a Norse/Anglo-Saxon deity. Just look at pictures of him. He is supposed to be fair and blonde with Nordic features. Just because Elba is from England does not mean he is Anglo-Saxon. I'm not trying to be prejudice... If an ethnic Englishman played an African deity it would be considered wrong. So why is this not?
Answers

Sandra K

There's no good reason for it. I refuse to watch movies that are so horribly miscast. Movie producers imagine they can get by with anything, but some of us refuse to watch movies that have such awful miscasting. No Viking gods are black.

Jonathan

Diversity quota.

OneDrop

LOL @ "Just because Elba is from England" OK... Anyway, he's an actor and he played a fictional character, if you don't like it don't watch

L. E. Gant

Have you noticed that many African deities (like South American deities) are white and blue eyed? But I agree with you -- Heimdall is a blond nordic. But then Tom Cruise (5' 7 or so) plays Jack Reacher (6'5") and gets away with it...

NiteOwl

He's suppose to be a deity/god, I'm sure he has the power to transform himself into a black man...

Magui

Heimdall and Thor are Nordic Scandinavian/Viking and not freaking Anglo-Saxon. So maybe the character should be played by a Scandinavian and not an Englishman or American or Australian or whatever other Anglo-Saxon nationality. Idris Elba is a nice actor so he can play whatever character.