I got myself a coffee advent calendar and I have to admit it was more aspirational than anything. I don’t drink enough coffee. But the packaging is nice. Web developers around the world have for years given a nod to Saturnalia solstice Isaac Newton’s birthday Yule wassailing mummering end of…
There are plenty of plug-ins, libraries, and tutorials that will add an “estimated reading time” visual cue to your site. There are also browser extensions for users. Most use JavaScript and CSS to calculate based on word count and viewport position. All require more work on the part of the…
TL;DR: Be careful when using the word grid on its own. Be certain you have chosen the term that accurately describes the pattern you want. If this post looks familiar to you, that is because it is essentially a redress of my 2023 post Be Careful Using ‘Menu’. It is…
TL;DR: If you plan to style text highlighted by the browser, you must give it sufficient contrast — 3:1 for the highlight block against its background and (probably) 4.5:1 for the text within that highlighted block against that background. CSS Context CSS provides methods to style the highlights that browsers…
It’s none. Clarification Let me clarify: don’t set a base font size. body { /* font-size: yeah, no */ } Got a linter or code checker or boss-man hassling you that you need to set something? Ok, use something like this: html { font-size: 100%; } Because This approach has…
Photo by studio tdes. Used under CC BY 2.0 Deed. Image cropped and contrast enhanced. A few days ago Benjy Stanton asked about breaking long words in tables. I offered a suggestion, which may or may not have worked. I never asked. My failure to follow up aside, it reminded…
This post supplements Browser Video Players Review. There I wade into the de facto accessibility of the <video> element based on the default video players provided by browsers. The results of my testing here update the tables in that post. One of the primary challenges of using the browsers’ default…
Before you get too far into this post, maybe read Browser Video Players Review. There I wade into the accessibility of the <video> element based on the video players browsers provide. Then maybe read Scott Jehl’s How to Use Responsive HTML Video (…and Audio!). I am leaning on support in…
Generated by Midjourney using the prompt “a Pagan advent calendar for Christmas, made of natural wood.” It seemed more appropriate for the season than the neon synthwave version (which I want to hire someone to make). Web developers around the world have for years given a nod to Saturnalia solstice…
Download a 2.6MB tagged PDF of my slides or try the embedded view if your browser displays PDF inline. I was invited Malmö, Sweden to present two talks at Øredev. Well, they asked me to do one but then suggested that hey, since I’m already there and stuff, how about…
I made a tutorial for styling links and buttons, something which many developers have struggled with (resulting in links used as buttons and buttons used as links). I have embedded it on this page, but if you are coming in with your RSS reader you can visit the tutorial directly…
I use the CSS :has() pseudo-class to provide an interactive alt text decision tree (from the W3C WAI Tutorial) that uses no script. It is progressively enhanced, so browsers without support for :has() still get all the content. See my post Under-Engineered Dependency Questions if you want my argument why…