Home/Daniel Schwarz
Author
DSDaniel Schwarz

Daniel Schwarz

31 articles by Daniel Schwarz.

Frontend — What’s !important #18: , Syntax ::highlight()ing, named-feature(), and More

What’s !important #18: , Syntax ::highlight()ing, named-feature(), and More

Well, that’s a wrap. No, not a flex-wrap, but rather today marks a new day, week, month, season, aaaand new edition of What’s important (#18), bringing you the best content that developers have produced over the last couple of weeks or so. What’s !important #18: <geolocation>, Syntax ::highlight()ing, named-feature(), and More originally handwritten and published with love on CSS-Tricks . You shou

DSDaniel SchwarzDaniel Schwarz·August 31, 2026Frontend
Frontend — Creating Web Widgets Using the Document Picture-in-Picture API

Creating Web Widgets Using the Document Picture-in-Picture API

The general idea is that we create a Document Picture-in-Picture window (DPIP window), and then we put HTML, CSS, and JavaScript into it. Creating Web Widgets Using the Document Picture-in-Picture API originally handwritten and published with love on CSS-Tricks . You should really get the newsletter as well.

DSDaniel SchwarzDaniel Schwarz·August 27, 2026Frontend
Frontend — What’s !important #17: Custom Highlight API, CSS Navigation Matching, Fixing text-stroke, and More

What’s !important #17: Custom Highlight API, CSS Navigation Matching, Fixing text-stroke, and More

Plus, how to style skeleton UIs, how to enable diagonal scrolling, how images can overflow themselves, and yet, still more. Basically, how to do a lot of really cool (CSS) stuff. What’s !important #17: Custom Highlight API, CSS Navigation Matching, Fixing text-stroke, and More originally handwritten and published with love on CSS-Tricks . You should really get the newsletter as well.

DSDaniel SchwarzDaniel Schwarz·August 14, 2026Frontend
Networking — Quick Hit #159

Quick Hit #159

Firefox 154 (Nightly) will ship text-box, text-box-trim, and text-box-edge, making them Baseline.

DSDaniel SchwarzDaniel Schwarz·July 7, 2026Networking
Frontend — What’s !important #5: Lazy-loading iframes, Repeating corner-shape Backgrounds, and More

What’s !important #5: Lazy-loading iframes, Repeating corner-shape Backgrounds, and More

This issue of What’s !important is dedicated to our friends in the UK, who are currently experiencing a very miserable 43-day rain streak. Presenting: the five most interesting things to read about CSS from the last couple of weeks. Plus, the latest features from Chrome 145, and anything else you might’ve missed. TL;DR: lots of content, but also lots of rain.

DSDaniel SchwarzDaniel Schwarz·February 13, 2026Frontend
Engineering — What’s !important #3: Popover Context Menus, @scope, New Web Platform Features, and More

What’s !important #3: Popover Context Menus, @scope, New Web Platform Features, and More

The developer community hasn’t wasted any time kicking off 2026 with some really great articles, demos, and insights. Firefox 147 and Chrome 144 also shipped, and while they’re not jam-packed with features, the releases are still pretty exciting for what’s normally a slow time of year, so without further ado, here’s what’s important from the last couple of weeks (or should I say the first couple o

DSDaniel SchwarzDaniel Schwarz·January 15, 2026Engineering
AI & ML — Penpot Is Experimenting With MCP Servers For AI-Powered Design Workflows — Smashing Magazine

Penpot Is Experimenting With MCP Servers For AI-Powered Design Workflows — Smashing Magazine

[Penpot](https://penpot.app/?utm_source=SmashingMagazine&utm_medium=Article&utm_campaign=MCPserver) is experimenting with MCP (Model Context Protocol) servers, which could lead to designers and developers being able to perform tasks in Penpot using AI that’s able to understand and interact with Penpot design files. Daniel Schwarz explains how [Penpot MCP](https://github.com/penpot/penpot-mcp) serv

DSDaniel SchwarzDaniel Schwarz·January 8, 2026AI & ML
Languages — What Else Could Container Queries... Query?

What Else Could Container Queries... Query?

How far can we really go with container queries? There are dozens of media queries now, so what if there were dozens of container queries as well? What could we use them for?

DSDaniel SchwarzDaniel Schwarz·December 12, 2025Languages
Systems — The Range Syntax Has Come to Container Style Queries and if()

The Range Syntax Has Come to Container Style Queries and if()

Being able to use the range syntax with container style queries — which we can do starting with Chrome 142 — means that we can compare literal numeric values as well as numeric values tokenized by custom properties or the attr() function.

DSDaniel SchwarzDaniel Schwarz·November 13, 2025Systems
Frontend — How To Leverage Component Variants In Penpot — Smashing Magazine

How To Leverage Component Variants In Penpot — Smashing Magazine

With component variants, design systems become more flexible, letting you reuse the same component while adapting its look or state with ease. In this article, Daniel Schwarz demonstrates how design tokens can be leveraged to manage components and their variations using Penpot, the open-source tool built for scalable, consistent design.

DSDaniel SchwarzDaniel Schwarz·November 4, 2025Frontend
Frontend — Exploring the CSS contrast-color() Function… a Second Time

Exploring the CSS contrast-color() Function… a Second Time

The contrast-color() function doesn’t check color contrast, but rather it outright resolves to either black or white (whichever one contrasts the most with your chosen color). Safari Technology Preview recently implemented it and we explore its possible uses in this article.

DSDaniel SchwarzDaniel Schwarz·June 5, 2025Frontend
Frontend — Invoker Commands: Additional Ways to Work With Dialog, Popover… and More?

Invoker Commands: Additional Ways to Work With Dialog, Popover… and More?

Web browsers are experimenting with two HTML attributes — technically, they’re called “invoker commands” — that are designed to invoke popovers, dialogs, and further down the line, all kinds of actions without writing JavaScript. Although, if you do reach for JavaScript, the new attributes come with some new events that we can listen for.

DSDaniel SchwarzDaniel Schwarz·November 20, 2024Frontend
Frontend — Animating CSS Grid (How To + Examples)

Animating CSS Grid (How To + Examples)

I’m pleased to shine a light on the fact that the CSS grid-template-rows and grid-template-columns properties are now animatable in all major web browsers!

DSDaniel SchwarzDaniel Schwarz·January 25, 2023Frontend