Skip to content

Commit 148dc63

Browse files
committed
Better cross-linking
1 parent d916eb5 commit 148dc63

4 files changed

+21
-15
lines changed

_posts/2011-09-17-writing-efficient-css-selectors.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ layout: post
55
slug: writing-efficient-css-selectors
66
title: Writing efficient CSS selectors
77
wordpress_id: 3144_
8+
meta: "CSS selectors, and their combinations, can be fast or slow! And while hopefully imperceptible, it’s definitely worth knowing about."
89
categories:
910
- Web Development
1011
tag:

_posts/2013-01-23-your-logo-is-still-an-image-and-so-is-mine.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
---
22
comments: true
33
date: 2013-01-23 18:33:00
4+
last_modified_at: 2025-06-10
45
layout: post
56
slug: your-logo-is-still-an-image-and-so-is-mine
67
title: Your logo is still an image… and so is mine!
@@ -198,6 +199,7 @@ and also take even more advantage of sprites! A machine sees an `img` labelled
198199
‘CSS Wizardry’ (perfect) and a user sees my logo (awesome)! Everyone is happy,
199200
everything is correct.
200201

201-
**Edit:** As many people have suggested, you could – if your stats allow it –
202-
use a Base64 data-URI instead of a gif and save the HTTP request. This obviously
203-
isn’t cachable in the same way as an image is, but it is gzippable!
202+
**Edit:** As many people have suggested, you could use a [Base64
203+
data](/2017/02/base64-encoding-and-performance/)-URI instead of a gif and save
204+
the additional HTTP request. This obviously isn’t cachable in the same way as an
205+
image is, and also does bring certain other downsides you ought to be aware of!

_posts/2020-05-19-the-fastest-google-fonts.md

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,8 @@ this post, I will list the results for both sites. My variants are:
8282
* **`font-display: swap;`:** Using Google Fonts’ new default.
8383
* **Async CSS:** Loading the Google Fonts File asynchronously.
8484
* **`preload`:** `preload`ing the CSS file to increase its priority.
85-
* **`preconnect`:** Warming up the `fonts.gstatic.com` origin myself.
85+
* **[`preconnect`](/2023/12/correctly-configure-preconnections/):** Warming up
86+
the `fonts.gstatic.com` origin myself.
8687

8788
Further, each variant is additive—it includes the previous variant as well as
8889
its own additions. I didn’t try _just_ `preload` or _just_ async, because it
@@ -199,12 +200,13 @@ Matcher_](https://meowni.ca/font-style-matcher/).
199200
| | 3.6 | 3.6 | 4.6 | 4.6 | 95 |
200201
| Change from Baseline: | +0.2 | −0.7 | +0.2 | +0.2 | −1 |
201202

202-
We haven’t removed any render-blocking resources from the critical path, so
203-
I wasn’t expecting to see any improvements in first paint. In fact, while
204-
harry.is remained identical, CSS Wizardry got 200ms slower. What we do see,
205-
however, is **a dramatic improvement in first contentful paint**—over a second
206-
on harry.is! **First web font improved on harry.is**, but not on
207-
csswizardry.com. Visually complete was 200ms slower.
203+
We haven’t removed any
204+
[render-blocking](/2024/08/blocking-render-why-whould-you-do-that/) resources
205+
from the critical path, so I wasn’t expecting to see any improvements in first
206+
paint. In fact, while harry.is remained identical, CSS Wizardry got 200ms
207+
slower. What we do see, however, is **a dramatic improvement in first contentful
208+
paint**—over a second on harry.is! **First web font improved on harry.is**, but
209+
not on csswizardry.com. Visually complete was 200ms slower.
208210

209211
I’m happy to say, for the metrics that matter the most, **we are 700–1,200ms
210212
faster**.

_posts/2022-08-24-measure-what-you-impact-not-what-you-influence.md

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -57,11 +57,12 @@ we measure and benchmark ourselves as we work. Not about the ultimate outcome,
5757
LCP, which is a UX metric, but about the technical metrics that we are impacting
5858
directly.
5959

60-
We might hypothesise that reducing the amount of render-blocking CSS should help
61-
improve LCP—and that’s a sensible hypothesis!—but this is where my first point
62-
about atomicity comes in. Trying to proxy the impact of reducing our CSS from
63-
our LCP time leaves us open to a lot of variance and nondeterminism. When we
64-
refreshed, perhaps we hit an outlying, huge first-byte time? What if another
60+
We might hypothesise that reducing the amount of
61+
[render-blocking](/2024/08/blocking-render-why-whould-you-do-that/) CSS should
62+
help improve LCP—and that’s a sensible hypothesis!—but this is where my first
63+
point about atomicity comes in. Trying to proxy the impact of reducing our CSS
64+
from our LCP time leaves us open to a lot of variance and nondeterminism. When
65+
we refreshed, perhaps we hit an outlying, huge first-byte time? What if another
6566
file on the critical path had dropped out of cache and needed fetching from the
6667
network? What if we incurred a DNS lookup this time that we hadn’t the previous
6768
time? Working in this manner requires that all things remain equal, and that

0 commit comments

Comments
 (0)