Website Optimization Measures, Part XIII

Published on March 5, 2022 (↻ August 27, 2023), filed under (RSS feed for all categories).

A fresh installment of the series, today some notes and observations on improving SVG and HTML, styling emphasis and code, and making better use of images. (If you’re new to these entries, here is where I casually share improvements to my personal projects.)

  1. Adding titles to SVG files. Quite randomly poking at and optimizing SVGs in my projects, I noticed how many of them had no metadata, no nothing about their contents. That looked like a missed (accessibility) opportunity, and after validating a few tests I decided to make sure each SVG, starting with logos, had a title element that could represent the image. Is it good practice? I believe yes.

  2. Revisiting html-minifier settings. I have a standard config for html-minifier, however as I’m constantly studying HTML (and completed the pilgrimage!), I questioned and reviewed the old setup. You can check the latest in the Eleventy config for Frontend Dogma. (I’m taking note to talk more about special cases, like not removing all quotes, and not always minifying HTML.)

  3. Reviewing use of @autocomplete. I’m collecting string for these posts for months, and in this case I don’t know anymore what I did đŸ˜‚ But, I’m sure, it led to better use of the autocomplete attribute.

  4. Adjusting styling for strong elements. As a great exercise in semantics, I’ve run a few projects where I styled em and strong elements the same way. (This way, you can’t go by appearance, you have to go by meaning.) But for design reasons, on this website, I changed this, so that both em and strong are still using italics, but strong emphasis also gets a background color. What do you think?

  5. Styling code blocks! I thought about this for many years but couldn’t get myself to add the needed code (minimalism). Then, running into highlight.js (and “inheriting” Prism from my Eleventy projects), I thought about it again. And I added highlight.js to meiert.com, injected only when a code block is actually present, and leaving it to highlight.js to figure out the type of code. That finally reconciled my preference for minimal code with the added usability of syntax-highlighted code samples.

  6. Adding back favicon markup â˜ ïž How ironic, no, given how I had written that the ideal favicon markup consists of nothing. But the user agents you yourself are using are powerful, and Firefox on Android has this issue of not using (or discarding) smaller-size favicons. Yet favicons serve a purpose and they’re useful, and therefore I grudgingly and—oh please, dear All That Is!—temporarily added link elements to my projects, pointing to each of their favicons.

  7. Switching to large social images. For every personal project, I prepare one large “social logo.” For historic reasons, however, I used markup—the most minimal social markup I could identify at the time—that didn’t take advantage of that. At first suspecting problems with the specific dimensions of these images, it turned out that, for Twitter, all I had to do was to switch from

    <meta name=twitter:card content=summary>

    to

    <meta name=twitter:card content=summary_large_image>

    Done. You can see said “most minimal social markup” in action on any of my projects—like in the Eleventy base template of Frontend Dogma [and in a later article].

This is a part of an open article series. Check out some of the other posts!

Was this useful or interesting? Share (toot) this post, become a one-time nano-sponsor, or support my work by learning with my ebooks.

About Me

Jens Oliver Meiert, on November 9, 2024.

I’m Jens (long: Jens Oliver Meiert), and I’m a frontend engineering leader and tech author/publisher. I’ve worked as a technical lead for companies like Google and as an engineering manager for companies like Miro, I’m a contributor to several web standards, and I write and review books for O’Reilly and Frontend Dogma.

I love trying things, not only in web development (and engineering management), but also in other areas like philosophy. Here on meiert.com I share some of my experiences and views. (Please be critical, interpret charitably, and give feedback.)