Almost all of the rules for BEM, SMACSS etc will tell you that using classes with property value descriptive names like
txt-clr-black should be avoided like the plague.
They’re all very well but if at some point you decide that you want to use red instead your classname makes no sense….so you have to create a new class…which leads to bloat.
That’s why they recommend classnames like
txt-clr-alert….they’re still descriptive but in a non-specific way.
So, you decide to change the alert color to pink, it’s simple fix and the class name is still descriptive.
Frankly, your method is a shipload of extra work that I, personally would find overcomplicated and bloated.