Maikel Krause's Avatar

Maikel Krause

@maikelkrause

Web dev 'n stuff https://github.com/mkrause

471
Followers
1,363
Following
184
Posts
04.11.2024
Joined
Posts Following

Latest posts by Maikel Krause @maikelkrause

As someone currently stuck in the rabbit hole of implementing focus management for custom components: gimme plz

07.03.2026 00:34 πŸ‘ 3 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
Request for developer feedback: focusgroup Β |Β  Blog Β |Β  Chrome for Developers Try out focusgroup and comment on the proposal.

Open UI has been working on speccing out the focusgroup attribute: a declarative way to support roving focus & add keyboard nav to composite widgets like toolbars/menus

We'd love your feedback!

Learn more & see open questions: developer.chrome.com/blog/focusgr...

H/t to Edge folks for prototyping

05.03.2026 16:54 πŸ‘ 69 πŸ” 20 πŸ’¬ 7 πŸ“Œ 2

Was wondering the same! Also, how is the state (eaten or not eaten) done, there's not really a "has tabbed to" state.

I noticed they only did one "wrap" (portal) in the video, maybe the path is hardcoded? πŸ™‚ And then "eaten" state could be just "all elements before current focus".

05.03.2026 19:05 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Video thumbnail

It seems we can now customize the select element, right? right?!

Demo: codepen.io/t_afif/pen/P... via @codepen.io

02.03.2026 13:44 πŸ‘ 369 πŸ” 82 πŸ’¬ 11 πŸ“Œ 13
Preview
CSS @scope: An Alternative To Naming Conventions And Heavy Abstractions β€” Smashing Magazine Prescriptive class name conventions are no longer enough to keep CSS maintainable in a world of increasingly complex interfaces. Can the new `@scope` rule finally give developers the confidence to wri...

Β»It’s almost like we need to develop tools to debug the tools we’re using to abstract what the web already provides β€” all for the sake of running away from the β€œpain” of writing standard CSS.Β«

That's exactly how I feel about all this CSS-in-JS non-sense.

www.smashingmagazine.com/2026/02/css-...

02.03.2026 07:30 πŸ‘ 5 πŸ” 2 πŸ’¬ 0 πŸ“Œ 0

Change it to `<select multiple size="1">` and you can keep shooting πŸ™‚

02.03.2026 16:47 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
High-Performance Syntax Highlighting with CSS Highlights API Learn how to implement blazing-fast code syntax highlighting using the CSS Custom Highlight API without creating DOM nodes for each token.

I wonder if there's already a production grade code syntax highlighting library (either read-only or editor) that uses #CSS Custom Highlights. Like described here: pavi2410.com/blog/high-pe...

02.03.2026 08:55 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
301919 – [css-anchor-position-1] Chained positioned elements don't find the correct anchors

Seems to be this bug: bugs.webkit.org/show_bug.cgi...

Figures that @kizu.front-end.social.ap.brid.gy would find this first πŸ™‚

01.03.2026 19:33 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
CSS anchor chain ...

Simplified test case of the Safari bug: codepen.io/maikelkrause...

It seems that a chain of anchors where each element anchors its previous sibling breaks when the first element is absolutely positioned. And the result in Safari is non-deterministic! Refresh a few times, you get different results.

01.03.2026 19:29 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Screenshot of a codepen showing a demo of a stepper component

Screenshot of a codepen showing a demo of a stepper component

Created a #CSS-only stepper component using anchor positioning to draw the connecting lines between the steps: codepen.io/maikelkrause...

(Unfortunately, it's broken in Safari at the moment in a quite interesting way. More details in the reply.)

01.03.2026 19:25 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

This is a few years old by now, but I just discovered this Bad Apple demo by Delan Azabani using only some text and #CSS Custom Highlights: bucket.daz.cat/work/igalia/...

Works in all browsers now! Though the performance on Firefox/Safari is a bit laggier than Chrome for me.

28.02.2026 13:59 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
CSS-only tooltip using shape() ...

#CSS shape() has become baseline thanks to the release of #Firefox v148 πŸ₯³

This tooltip experiment I created a year ago now works cross-browser: codepen.io/maikelkrause...

26.02.2026 11:44 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Jokes on you, it's actually my birthday

22.02.2026 13:41 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

I think half of the reason I'm hyped about it is that it seems it opens the syntax space a bit for more operators in selectors. I would still love to see the @scope operator (forgot the exact proposed syntax) to come back in play for instance.

22.02.2026 13:21 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

#CSS reference combinators (`label /for/ input`) look hype

22.02.2026 10:45 πŸ‘ 2 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Preview
An in-depth guide to customising lists with CSS Richard Rutter helps you to make sense of list-style, list-item, ::marker, counters(), counter(), @counter-style, symbolic, symbols(), symbols and more to push your HTML and CSS lists to the next level.

Richard Rutter helps you to make sense of list-style, list-item, ::marker, counters(), counter(), @counter-style, symbolic, symbols(), symbols and more to push your HTML and CSS lists to the next level.

piccalil.li/blog/an-in-d...

19.02.2026 12:05 πŸ‘ 25 πŸ” 7 πŸ’¬ 1 πŸ“Œ 2
Screenshot of two news headlines: (1) Arrest of Andrew Mountbatten-Windsor, and (2) Life sentence for former South Korean President Yoon

Screenshot of two news headlines: (1) Arrest of Andrew Mountbatten-Windsor, and (2) Life sentence for former South Korean President Yoon

What is this, Consequences Day?

19.02.2026 13:29 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

The @scope bug fix for input elements (and other UA shadow DOM elements). For me I can't really consider @scope baseline without this, so very happy to see it being fixed.

17.02.2026 19:02 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

It's true there wasn't a lot for a while back in 2024/2025, but in recent months they've added support for: anchor positioning, @scope, view transitions (level 1), contrast-color(), and probably some more I'm forgetting.

17.02.2026 06:12 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

I wrote a little script that imports the tokens from Figma, and then generates the CSS as well as a TypeScript file. And then there's mdx pages like these that display them:

- github.com/fortanix/bak...
- fortanix.github.io/baklava/?pat...

13.02.2026 15:22 πŸ‘ 4 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Browser developers are working on custom form controls ( `appearance:base`), the next giant task is looming: customisable input type=date/datetime/color pickers.

These are huge and have wildly varied UI. Send me your examples, I'd love to see them and build up a body of these pickers.

13.02.2026 10:06 πŸ‘ 88 πŸ” 30 πŸ’¬ 7 πŸ“Œ 3

Ah awesome! Just in time to get those points on Interop 2026

12.02.2026 20:01 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Lots of exciting stuff! I was kind of hoping for customizable select to be on the list though. Especially since it seems there's movement on this front at both Gecko and WebKit, I figured this would be a focus area this year

12.02.2026 18:06 πŸ‘ 3 πŸ” 0 πŸ’¬ 2 πŸ“Œ 0
Blink: Intent to Prototype: Margin-trim Blink: Intent to Prototype: Margin-trim

Blink: Intent to Prototype: Margin-trim

11.02.2026 09:47 πŸ‘ 6 πŸ” 2 πŸ’¬ 0 πŸ“Œ 0

Yeah I was thinking some sort of registry of package name β†’ implementation so it can be done locally.

08.02.2026 14:00 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Quick idea: some sort of codemod that recognizes these packages and replaces them with an inline variant?

08.02.2026 13:51 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Lucca lying on the floor being cute

Lucca lying on the floor being cute

Happy #caturday!

31.01.2026 16:58 πŸ‘ 6 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Video thumbnail

Finally solving the tooltip arrow usecase with a new CSS property called border-shape

⚠️ WIP early-stage API, timeline TBD, more info coming soon

But it brings a lil tear to my eye to see this working, border & all πŸ₯²

This demo uses anchored container queries + border-shape + a little animation

30.01.2026 19:12 πŸ‘ 125 πŸ” 14 πŸ’¬ 7 πŸ“Œ 4
Blink: Intent to Experiment: Focusgroup Blink: Intent to Experiment: Focusgroup

Blink: Intent to Experiment: Focusgroup

29.01.2026 21:09 πŸ‘ 12 πŸ” 8 πŸ’¬ 0 πŸ“Œ 1
Video thumbnail

Linked lists using anchor-positioning.

Adapted from my JS version which used SVG paths to this version which positions pseudo elements using position-anchor to link them to the checked checkbox items and current selected radio button.

See the full demo on @codepen.io codepen.io/cbolson/pen/...

29.01.2026 11:24 πŸ‘ 82 πŸ” 10 πŸ’¬ 2 πŸ“Œ 2