Category
Development
7articles filed under Development.

A True Modal Dialog (No JavaScript Required)
Popover floats above the page, but it won't lock the rest of it down. A dialog will - focus trap, an inert background, a real backdrop - with zero JavaScript.

A Pure-CSS Tabs Component (No JavaScript)
Tabs look like a job for JavaScript: state, click handlers, ARIA wiring. For the common case, a few radio buttons and some CSS do all of it.

CSS Finally Has a Parent Selector
For as long as CSS existed, a parent could style a child - never the other way round. :has() breaks that rule, and it's a bigger deal than it sounds.

Container Queries: Components That Adapt to Their Space
Media queries ask how big the screen is. Container queries ask how big the component's space is - which is the question you usually actually have.

Dark Mode the Simple Way: One Set of CSS Variables
Dark mode doesn't mean writing your styles twice. Define colors as CSS variables once, flip them under one class, and the whole UI inverts.

A Pure-CSS Accordion (No JavaScript Required)
The humble details element gives you an accessible accordion with zero JavaScript and almost no CSS. Here's how to build one and style it well.

A Pure-CSS Carousel (No JavaScript Required)
You don't need a library or a line of JavaScript to build a smooth, swipeable carousel. CSS scroll-snap handles the whole thing - here's how, with the code.
Browse Other Topics
Say hello
Let's make something
you're proud of.
Tell us what you're working on - even a rough idea is plenty. Book a quick call, or send a message and we'll reply like actual humans, usually within a day.
A short intro call - no pitch, just a chat about what you're working on.
Prefer email?
office@otterdev.meBased in
Montenegro
Working with people here, and anywhere the wifi reaches.
Prefer to write?