I think the people who do the hiring(or make the policies) often go by their own prejudices, and then rationalize that decision later. Maybe I hate hippies, and so if you come in with long hair I won't hire you. Or maybe I think Mr. Nosering would be fun to hang out with so I'll hire him(all else being equal).
Here's a story about a woman who got fired from a bank for being too hot:
http://www.villagevoice.com/2010-06-...ork-in-a-bank/ The story is pretty one-sided, and there's certainly more to the situation than is being said. So, would I be in the right for firing her if her beauty caused a loss of productivity? Should she have to ugly herself up?