Originally Posted by GBR
The only case that might exist is that if one is wearing a thin light-coloured shirt and wears an undershirt/vest then a light coloured one is preferable. However undershirts are dreadful things and should not be worn anyway.
If one doesn't wear undershirts he is going to sweat right into his shirt and that is much worse as sweat stains on the back are disgusting. Besides, if one has a protruding belly the part of it will be seen through the space between the buttons and that is a gross.