1. Emil Björklund: What is the equivalent of a unit test for HTML + CSS? (Yes, I know of Selenium, webdriver etc, but I'm fishing for other answers as well.)

    @thatemil I’ve always considered style guides/pattern libraries to be unit tests for HTML+CSS, and you could automate them with JS if they get too unwieldy.

  2. If you want to generate real PDFs from HTML (i.e. with page breaks and real text, not just vast screenshots inside a PDF) then wkpdf is the way to go. Super fast, installs easily, great output.

  3. Laura Kalbag: And <br/> tags used instead of <label>s in forms makes me downright stabby.

    Laura Kalbag my current pet peeve is a h1, then a h2 directly below it which is not a header, just a paragraph the author wanted to make look bigger (or a subheader, like bootstrap does with the downright weird h1 -> small). I saw it once a while ago, now I’m seeing it everywhere :/

  4. Cross-browser selection UI injection flow:

    1. Listen for mouseup on body
    2. When triggered, let s be window.getSelection()
    3. If s.isCollapsed === false, return
    4. Else, let r be s.getRangeAt(0)
    5. Create a new element e
    6. Call r.surroundContents(e)
    7. e.innerHTML and e.textContent now return useful values, and e’s coordinates can be used to inject UI into the page

    To resolve: what element should e be? Or more accurately, what display property should it have? Possibly inline-block (inline mucks up if selection is across block elements, block mucks up selections within text nodes)

    Turns out there are problems with r.surroundContent, namely that it does not handle partial element selections. See MDNs explanation and solution.
  5. aral I disagree, "continue" is confusing compared to start. Start = start from a number, continue = what? Continue from a number? So the list should start from that number plus one? Or continue from another ol (perhaps by using an id reference)?

  6. Rolled out usage of the menu element on . I’m looking forward to more browser support for HTML context menus, that will really open up the possibilities for cross-browser extensions