A blog about web development, HTML, CSS, JavaScript, and web accessibility.

Why I'm not the biggest fan of Single Page Applications

Sometimes it seems like accessibility experts and other web professionals hate JavaScript. This might be true for some, but most understand that JavaScript can be useful for improving UX and even accessibility. JavaScript solutions are often more accessible than their pure HTML or CSS counterparts.

Day 99: native nesting

Nesting in CSS is coming soon! For me personally not the killer feature, at least compared to cascade layers or container queries, but still exciting. Let’s see how it works.

Day 98: oklab() and oklch()

oklab() and oklch() are okay versions of lab() and lch() because lab() and lch() are not okay.

Day 97: animating grids

It’s possible to animate gap, grid-template-columns, and grid-template-rows.

Day 96: the margin-trim property

The margin-trim property allows a container element to trim the margins of its children where they adjoin the container’s edges.

Day 95: the color-mix() function

The color-mix() function takes two colors and returns the result of mixing them, in a given color space, by a specified amount.

Day 94: the accent-color property

The accent-color CSS property allows us to specify the accent color for user-interface controls generated by an element.

Day 93: the lch() color function

The lch() color function allows you to pick colors from the CIELAB color space, which is device-independant and covers the entire gamut (range) of human color perception.

Day 92: relative color syntax

With the relative color syntax we can modify existing colors using color functions. If an origin color is specified, each color channel can either be directly specified, or taken from the origin color and modified.

Day 91: a previous sibling selector with :has()

I’ve already shown much appreciation for the :has() pseudo-class in this series, but that we can use it as a previous sibling selector tops it all of.