It works well for fast delivery, prototypes, and teams optimizing for short-term speed, but over time it tends to spread styling decisions across markup, making the system harder to control, reason about, and maintain.
Coming back a couple of years later to a broken build system when you just want to change a colour is no fun.
If you choose tailwind, nothing is stopping you from using components. You can choose to use predefined components, or you can create your own. Or some mix.
Don't you get the same effect and functionality from simply adding style attributes directly on the elements in HTML?
Why is that approach considered bad practice, while Tailwind, which is effectively the same – but with shortened names – accepted as common practice?
As the article states, at least with Bootstrap you are sharing common behaviour with a single class name that can then be modified globally.
It just adds an extra layer of abstraction, which I happen to also find unnecessary.
Can't tell if you're talking about React or Tailwind