I argue you should also omit the units.
From a programmer’s perspective, 0 == null == none == false, where 0px == 0px only.
Which means that if you specify a border width of 0 then no border will be there, but if you specify a 0px border, then a border of 0 px will be created (that’s the idea behind it, in reality 0px gives the exact same result like 0).
Further Points
- unit-less
0makes it easier to read as it is easily distinguishable from normal unit’ed values. - It makes sense to remove the units as they have no point in being there (0 could mean size, color, etc.).
Conclusion: Omit the units in 0. They’re not needed and confusing.