They're superheroes, not regular people. Superman wears underwear over his spandex pants. It's not meant to conform to mainstream fashion.Movie versions for certain.
The comic versions (save Thor) don't really look like anything a person would wear into battle.