In defense of functional CSS
How is this any different from saying &quot;don&#x27;t write functions, just repeat the same 10 lines the function would have in each place you&#x27;d use the function&quot;?<p>The real kicker:<p>&gt; <i>&quot;I don&#x27;t want to have to repeat the same 20 classes on every single button.&quot; That&#x27;s understandable. I will say that there&#x27;s a chance that repeating those 20 classes can actually be somewhat valuable, because when you get into a situation where one of the buttons needs to have slightly more margin-top than the others, then it&#x27;s easy to fix.</i><p>That&#x27;s just... bizarre, sorry.<p>It&#x27;s infinitely better programming practice to use a &quot;button&quot; CSS class, because then every time you want to tweak all buttons on the site, you tweak it in one place. With 100 buttons in different places, can you imagine the maintenance nightmare?<p>The author suggests creating button HTML templates instead... but <i>why</i>? That&#x27;s what CSS already <i>does</i>. And when one button needs more margin or whatever other unique tweak... you just add an additional class so it becomes e.g. class=&quot;button button-extra-spaced&quot;.<p>For the life of me I can&#x27;t see <i>any</i> advantages to the &quot;functional CSS&quot; described here at all -- it looks like a nightmare programming practice.