News for hackers. Stuff that matters.
Re:Show HN: A maximalist CSS framework for full stack develo... by chrismorgan on Monday June 15, 2020 @02:38PM (#23531229)
On this particular page, it’s been split up into two stylesheets: the base part, and a theme; and JavaScript is required to load the theme, without which it looks awful. It would be nice for that to be fixed.

My usual complaint about these things is hijacking of existing semantic elements for presentation purposes. AbsoluteDestiny has dealt with that, so I’ll lay off this time. Beyond that: you have followed one of the routes I usually suggest, which is using your own elements (e.g. <vstack>). Good! I approve! Just one thing: if you want your markup to be valid HTML, put a hyphen in your element names so that they’re proper autonomous custom elements rather than just unknown elements that could theoretically be assigned meaning in the future. <v-stack>, <r-vstack>, <ridge-vstack>, something like that.

Other matters of HTML validity, mostly pretty harmless and about the markup shown on the sample page:

• You have some stray end tags: </img>, </input>. These are empty elements, so they don’t have end tags (that is, it’s actively wrong to write them, though in practice it’s completely harmless).

• You’re not allowed to put buttons inside links, though it will probably work almost properly in all browsers. The notable interactivity problem is that the link and the button are both focusable, so it messes up keyboard navigation a little. (A related case is links inside links, which is actively forbidden in the parser, and not handled by browsers. My vague recollection is that Firefox was the only one that did what a sane person would expect in the past, and no one else wanted to implement it, so they ripped the functionality out of spec and browser, to the regret of some.)

• tab-index="1" looks like you may have meant tabindex="1", though I suspect you don’t want either.

• The radio button label for attribute is wrong. Should be something like this (or you could just drop the `for` attribute, though allegedly some few accessibility tools are stupid and wrong and make a mess of things if you omit it, even though that’s perfectly valid and has been forever):

  <label for="radio1">
    <input type="radio" name="radio" value="true" id="radio1">
    Radio 1
  </label>
Re:Show HN: A maximalist CSS framework for full stack develo... by swlkr on Monday June 15, 2020 @03:06PM (#23531596)
I actually like <v-stack> although it could be confusing coming from vue.js, but that's something I can live with.

Thanks for pointing out everything, it should all be fixed if you take a second look, except for the button in a link thing, that's going to take a little bit.