<story><title>Tailwind is a leaky abstraction</title><url>https://jakelazaroff.com/words/tailwind-is-a-leaky-abstraction/</url></story><parent_chain><item><author>adamlett</author><text>&amp;gt;  But that&amp;#x27;s kind of the point. Tailwind is a layer on top of CSS, but it doesn&amp;#x27;t actually hide any complexity in the layer below. You still need to know CSS.&lt;p&gt;This completely misses the point of Tailwind. The point is &lt;i&gt;not&lt;/i&gt; to hide the complexity of CSS, but to provide access from the markup to enough of capabilities of CSS that you don&amp;#x27;t have to edit your stylesheets 95% of the time, when you alter the styling of a document.&lt;p&gt;When Tailwind does fall short because it doesn&amp;#x27;t provide the exact CSS feature that is needed to solve the problem, it still provides a template for how to solve the problem: Using one-rule utility classes, that are named for what they do, not for how they are meant to be used.</text></item></parent_chain><comment><author>viddi</author><text>Maybe I&amp;#x27;m going out of a limb here, but wasn&amp;#x27;t the whole point of CSS to not have to touch the markup when changing the styling? Not trying to talk Tailwind down, I have just missed a lot of the evolution of web design in the past 15 or so years.</text></comment>
<story><title>Tailwind is a leaky abstraction</title><url>https://jakelazaroff.com/words/tailwind-is-a-leaky-abstraction/</url></story><parent_chain><item><author>adamlett</author><text>&amp;gt;  But that&amp;#x27;s kind of the point. Tailwind is a layer on top of CSS, but it doesn&amp;#x27;t actually hide any complexity in the layer below. You still need to know CSS.&lt;p&gt;This completely misses the point of Tailwind. The point is &lt;i&gt;not&lt;/i&gt; to hide the complexity of CSS, but to provide access from the markup to enough of capabilities of CSS that you don&amp;#x27;t have to edit your stylesheets 95% of the time, when you alter the styling of a document.&lt;p&gt;When Tailwind does fall short because it doesn&amp;#x27;t provide the exact CSS feature that is needed to solve the problem, it still provides a template for how to solve the problem: Using one-rule utility classes, that are named for what they do, not for how they are meant to be used.</text></item></parent_chain><comment><author>the_other</author><text>&amp;gt; The point is not to hide the complexity of CSS, but to provide access from the markup to enough of capabilities of CSS that you don&amp;#x27;t have to edit your stylesheets 95% of the time, when you alter the styling of a document.&lt;p&gt;This makes Tailwind seem like a lot of machinery (in the sense of bundle size, running code, and pseudo-language) just to avoid opening a file at dev time.&lt;p&gt;Layouts are often &amp;quot;collaborations&amp;quot; - the effect of multiple items interacting. You&amp;#x27;d still need to open multiple files to understand what was going on. Or read the DOM in the browser. When I read component code, I almost always prefer it when the style _isn&amp;#x27;t_ in the same file as the JS. It takes up space on the screen and gets in the way of reading about the behaviours.&lt;p&gt;I don&amp;#x27;t get the propertied benefits. Granted, I&amp;#x27;ve still not used it.</text></comment>