DEV Community

Discussion on: What is BEM and why use it to name your HTML classes!

Collapse
 
steveblue profile image
Stephen Belovarich • Edited

Great post! I think everyone should adopt BEM or similar naming conventions for CSS. The benefits are real.

I’ve been using BEM for over five years now. Harry Roberts of CSS Wizardry fame sat in at our office at Ubiquiti Networks to audit our styling and overall performance and convinced me it was the way to go. Over the years I riffed off the pattern, particularly the modifiers.

I don’t like scoping modifiers to the block through naming. Modifiers tend to be fairly reusable outside of the block they are in.

Instead of main__text-special I tend to break it up into two classes main__text is—special. Specificity works here for our benefit. The thing to watch out for in BEM is a bunch of duplicate CSS all over the place. There are ways to avoid that through specificity.

I like to think there are no hard and fast rules about BEM. You can play around with it and find what works for you.

Collapse
 
host510 profile image
Mikhail

Developers do not type much HTML currently. CSS modules is what we use now. And they don't need BEM.

Collapse
 
host510 profile image
Mikhail

Totally agree with you. BEM is obsolete.

Collapse
 
pachicodes profile image
Pachi 🥑

I will probably start using that for modifiers!! Thanks for the tips!