🏳️Home • Lea Verou

Website faviconlea.verou.me

**Hi, I’m Lea!** 👋🏼 I love making things that help people make things.  

I work as Product Lead at [Font Awesome](https://fontawesome.com/), building the next generation of web design tools. Ι also [make web technologies better](/specs/), and launch [open source tools](/projects/) used by millions of developers. I’ve done [HCI research](/publications/#research) at [MIT](https://mit.edu), earning me a PhD (_yes, I also answer to Dr Verou_ 😅). I love sharing knowledge via [speaking](/speaking/), [teaching](https://designftw.mit.edu), and [writing](/publications/). Here, I [blog](/blog/) about product design, web technologies, and more.

[More about me](/about/)

[Blog](/blog/)[](/feed.xml "Feed")

----------------------------------

232.  [Style-observer: JS to observe CSS property changes, for reals](/blog/2025/style-observer/) 13 Mar 2025 3 min

233.  [Context Chips in Survey Design: “Okay, but how does it _feel_?”](/blog/2024/context-chips/) 27 Dec 2024 16 min

234.  [Web Components are not Framework Components — and That’s Okay](/blog/2024/wcs-vs-frameworks/) 1 Oct 2024 6 min

235.  [Making the Web more Awesome — for everyone](/blog/2024/awesome/) 16 Sept 2024 3 min

236.  [Forget “show, don’t tell”. Engage, don’t show!](/blog/2024/engage-dont-show/) 3 Jul 2024 4 min

237.  [Inline conditionals in CSS, now?](/blog/2024/css-conditionals-now/) 21 Jun 2024 20 min

238.  [Inline conditionals in CSS?](/blog/2024/css-conditionals/) 18 Jun 2024 6 min

239.  [On compliance vs readability: Generating text colors with CSS](/blog/2024/contrast-color/) 17 May 2024 18 min

240.  [Eigensolutions: composability as the antidote to overfit](/blog/2023/eigensolutions/) 19 Dec 2023 14 min

241.  [Minimalist Affordances: Making the right tradeoffs](/blog/2023/minimalist-affordances/) 2 Nov 2023 27 Nov 2023 6 min 4

242.  [State of HTML 2023 now open!](/blog/2023/state-of-html-2023/) 22 Sept 2023 4 min 9

243.  [Numbers or Brackets for numeric questions?](/blog/2023/numbers-vs-brackets/) 3 Aug 2023 7 Aug 2023 7 min 3

244.  [Help Design the Inaugural State of HTML Survey!](/blog/2023/design-state-of-html/) 26 Jul 2023 4 min

245.  [Going Lean](/blog/2023/going-lean/) 21 Jul 2023 8 min 3

246.  [Rethinking Categorization](/blog/2023/rethinking-categorization/) 20 Jul 2023 4 min 6

247.  [11ty: Index ALL the things!](/blog/2023/11ty-indices/) 19 Jul 2023 4 min

248.  [Migrating Disqus from WP to 11ty](/blog/2023/preserve-disqus/) 18 Jul 2023 4 min 1

249.  [JS private class fields considered harmful](/blog/2023/04/private-fields-considered-harmful/) 28 Apr 2023 2 min 19

250.  [Contrast Ratio has a new home — and this is great news!](/blog/2023/03/contrast-ratio-new-home/) 18 Mar 2023 1 min 1

251.  [Position Statement for the 2022 W3C TAG Election](/blog/2022/11/tag-2/) 7 Nov 2022 3 min 1

252.  [State of CSS 2022 now open!](/blog/2022/10/state-of-css-2022-now-open/) 3 Oct 2022 2 min 1

253.  [On ratings and meters](/blog/2022/08/on-ratings-and-meters/) 12 Aug 2022 2 min

254.  [Help design the State of CSS Survey 2022!](/blog/2022/07/help-design-the-state-of-css-survey-2022/) 28 Jul 2022 2 min 2

255.  [What is the best way to mark up an exclusive button group?](/blog/2022/07/button-group/) 14 Jul 2022 2 min 1

256.  [Introducing Rety: live coding, without the stress](/blog/2022/07/rety/) 13 Jul 2022 3 min

257.  [Releasing Color.js: A library that takes color seriously](/blog/2022/06/releasing-colorjs/) 29 Jun 2022 2 min 2

258.  [On Yak Shaving and , a new HTML element for Markdown](/blog/2021/11/on-yak-shaving-and-md-block-an-html-element-for-markdown/) 26 Nov 2021 2 min 1

259.  [Custom properties with defaults: 3+1 strategies](/blog/2021/10/custom-properties-with-defaults/) 15 Oct 2021 4 min 5

260.  [Inherit ancestor font-size, for fun and profit](/blog/2021/06/inherit-ancestor-font-size-for-fun-and-profit/) 24 Jun 2021 6 min 3

261.  [Is the current tab active?](/blog/2021/05/is-the-current-tab-active/) 24 May 2021 4 min 7

[More blog posts](/blog/page/3/)