I’ve long been on the “spaces” side of the tabs vs. spaces preference debate. I think there is just something that feels sturdy and reliable about spaces. I’m wrong though. Despite not having swapped over most of my projects, I think that, objectively, tabs are the better choice.
So since it doesn’t impact experience, allows for individual preference matching, and is more accessible, that makes tabs objectively better.
There is also the matter of reading code on the web itself. I was just reading Dynamic Tab-Size Demo Using CSS Custom Properties In JavaScript from Ben Nadel and it makes the same point as #2 above. There is a tab-size property in CSS, and that allows for control over how visually indented code can be in a way spaces can’t. See:
CodePen Embed Fallback