Skip to content

Creating Animated, Clickable Cards With the :has() Relational Pseudo Class

CSS-Tricks

The CSS :has() pseudo class is rolling out in many browsers with Chrome and Safari already fully supporting it. It's often referred to it as “the parent selector” — as in, we can select style a parent element from a child selector — but there is so much more that :has() can help us solve. One of those things is re-inventing the clickable card pattern many of us love to use from time to time.

Read more about Creating Animated, Clickable Cards With the :has() Relational Pseudo Class (CSS-Tricks)

Practical uses of the :has() relational pseudo class

text that contains :has()

The :has() relational pseudo class has landed in Chrome and Safari and even though it gets less hype than for instance container queries, I believe this little pseudo class contains a lot of improvements to the way we write CSS today.

Read moreabout Practical uses of the :has() relational pseudo class

Easy Fluid Typography With clamp() Using Sass Functions

Smashing Magazine

Fluid typography is getting a lot more popular, especially since the clamp() math function is available in every evergreen browser. But if we’re honest, it’s still a lot of mathematics to achieve this. You can use tools such as utopia.fyi, which are fantastic. But in large projects, it can get messy pretty fast. So let's make this easy with Sass.

Read more about Easy Fluid Typography With clamp() Using Sass Functions (Smashing Magazine)

Coding on a Chromebook - part 2

2 Dinos with heart in html

I purchased a Chromebook for my little coding projects. In the first part I wrote about the basic development setup. In this post, we're taking a bit of a deeper dive: installing git, node, filezilla, some browsers, Docker and updating the terminal on ChromeOS. So let's open the terminal and dive right into it.

Read moreabout Coding on a Chromebook - part 2

Coding on a Chromebook - part 1

Dino with heart

A few months ago, I purchased a Chromebook for my little side projects. I'm used to working on a Macbook, but I wanted to work with something that has a different feel, to make my little creations on the side feel more relaxing, and less like work. I have gained a lot of love for ChromeOS. This will be an article in two parts. In the first part, I want to talk about the first experiences, my basic ChromeOS setup and enabling developer mode.

Read moreabout Coding on a Chromebook - part 1

Introducing a Mini Static Thingy Wingy

Little purple head with lightning around it - static thingy wingy logo

The world is full of frameworks and content management systems, we're very spoiled when we want to create an application, but sometimes, you just need something static, simple and fast, so I created a Mini Static Thingy Wingy.

Read moreabout Introducing a Mini Static Thingy Wingy

CSS Day 2022: A small recap

CSS Day conference room

After a long break because of Covid-19, CSS Day is back. In a new location at the Zuiderkerk in Amsterdam. Once again trying to create the perfect line-up for everything design and CSS, and boy, they delivered just that.

Read moreabout CSS Day 2022: A small recap

The details element, collapsing content without the hassle

accordion in html and css

Some HTML5 elements seem to have the tendency of not being picked up by developers. Although widely supported, we still seem to use collapses with the use of a JS library instead of using a native element. In this little post, I want to highlight the details element a bit.

Read moreabout The details element, collapsing content without the hassle

A lot of power with little JavaScript, the HTML dialog element is here

Dialog visual styled with html and css

With Safari (15.4) being one of the last to implement the dialog element, a lot of browsers have great support for this element.. Goodbye to huge JavaScript libraries and welcome to the native HTML5 dialog element. This is beauty and simplicity on the web in its purest form. It's accessible, customisable and most of all: easy to use.

Read moreabout A lot of power with little JavaScript, the HTML dialog element is here