<story><title>Principles we use to write CSS for modern browsers</title><url>https://gist.github.com/alekseykulikov/68a5d6ddae569f6d0456b0e9d603e892</url></story><parent_chain></parent_chain><comment><author>skrebbel</author><text>A bit meta, but I need this off my chest: I love how this document starts off saying &amp;quot;this is for react apps&amp;quot;. IMO every discussion about CSS coding standards needs to start with context.&lt;p&gt;A lot of old CSS lore came from people who build websites. I mean those fairly uninteractive things, focus on content. Blogs, restaurants, newspapers.&lt;p&gt;Building an application that happens to use the DOM as their UI toolkit is totally different. The whole &amp;quot;reuse the same classes but with different content&amp;quot; thing that CSS classes were designed for becomes less important, and &amp;quot;reuse pieces of &lt;i&gt;behavior&lt;/i&gt;&amp;quot; makes a lot more sense.&lt;p&gt;There&amp;#x27;s probably more domains or subdomains that warrant their own CSS best practices. But I&amp;#x27;m totally tired of a blog designer and a react app coder fighting on HN about how the other one is doing it wrong, when really they&amp;#x27;re just solving different problems.</text></comment>
<story><title>Principles we use to write CSS for modern browsers</title><url>https://gist.github.com/alekseykulikov/68a5d6ddae569f6d0456b0e9d603e892</url></story><parent_chain></parent_chain><comment><author>MatekCopatek</author><text>IMHO, naming conventions such as SUIT, BEM, OOCSS and the like are NOT a good practice, but merely a workaround for dealing with the limitations of a global namespace.&lt;p&gt;My preferred solution are CSS Modules[1], Vue&amp;#x27;s scoped styling[2] or something similar.&lt;p&gt;[1] &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;css-modules&amp;#x2F;css-modules&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;css-modules&amp;#x2F;css-modules&lt;/a&gt;&lt;p&gt;[2] &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;vuejs&amp;#x2F;vue-loader&amp;#x2F;blob&amp;#x2F;master&amp;#x2F;docs&amp;#x2F;en&amp;#x2F;features&amp;#x2F;scoped-css.md&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;vuejs&amp;#x2F;vue-loader&amp;#x2F;blob&amp;#x2F;master&amp;#x2F;docs&amp;#x2F;en&amp;#x2F;feat...&lt;/a&gt;</text></comment>