I dunno, I am certainly not hidden from our customers; I interact with them directly, every day, over email, phone and screen-shares. But other than rare on-site visits and conferences, I don't see them face-to-face, so it doesn't much matter what type of shirt, or even any shirt at all, that I'm wearing.
Compartmentalizing workers from each other and from customers is a means of control. Specifically management is trying to make sure that their developers do not get exposure to internal or external groups that may try to hire them away. Or give them a job if they get fired or laid off.
Consider
Case A: Customer knows you well understands you are competent. If you want to leave or are laid off that customer might eityher hire you or know someone who does. Or at least will give you a solid reference.
Compare with.
Case B: Customers and others only know you through your boss.
That's probably relevant only to the companies that work in the same field as their customers. But there's another issue that applies to all: it makes that layer of managers relevant. If they'd let the developers talk to the customers directly, they wouldn't be needed anymore.