CSS Variables: Access Custom Properties with JavaScript

The recent release of Firefox 31 brought an implementation of CSS Variables. Based on that, Daniel Imms wrote an interesting post, What CSS Variables Can Do That Preprocessors Can’t, where he investigates a few use cases for native variables over those provided by pre-processors like Sass and LESS (there’s a common argument that CSS variables are unnecesary as we already have them, and more flexibly, in pre-processors).

In this article I’m going to expand on Daniel’s article a little, showing an advantage of CSS Variables that he doesn’t talk about in detail: interacting with them using JavaScript.

Read the full article


A More-Than-Bearable Wearable: The LG G Watch

Yesterday I read Christian Heilmann’s article Bearable Wearables, a review of the Samsung Gear Live and Android Wear. Christian’s overall opinion was that it’s too flawed for him to currently find useful. I’ve been using an LG G Watch for the last few weeks, and have come to a different conclusion; that being the case, I thought I’d give my own opinion. Consider this my review of the G Watch, in the form of a response to some of the issues Christian raised — meaning you should first read his article in order to get the most from this one.

Read the full article


The Thoughtful Web: a new email newsletter

There are very many excellent email newsletters covering web technologies: Smashing Magazine, CSS Weekly, Web Designer Depot are the first three to immediately spring to mind. But I think there’s space for another one, one that has the focus less on code and process and more on philosophy and reflection. So I’m going to start one.

It’s provisionally titled ‘The Thoughtful Web’, and my intention is to post an occasional email (not weekly, more than monthly), featuring articles I think are really worth reading. It’ll cover the web, new and emerging technology, science, society, and philosophy — but I think it will all be relevant to the work we do making the web.

If you’re interested, you can sign up today. I intend to send the first email later this week, and I promise I’ll never be spammy; I hate email noise, and don’t intend to contribute to it.


Talking about Web Components with Eric Bidelman

In September of last year I asked Google’s Eric Bidelman some questions about web components for a feature I was writing. Unfortunately it turned out there was no room in the article for Eric’s answers, but I recently stumbled across them again and decided they are too good to go to waste, so here they are.

Thanks very much to Eric for answering my questions, and apologies if the passage of time has outdated any answers.

Read the full article


CSS Blending — a Five-minute Introduction

With the release of version 30, Firefox becomes the latest browser to support CSS Blend Modes (Chrome has had them for a few months, and support is on the way in Safari 8). But what are blend modes? What is blending, for that matter?

If you’ve ever used image editing tools like Photoshop, Sketch or GIMP, you’ll probably already be familiar with blend modes. For everyone else, they are methods of mixing two visual layers so that the two are combined. This could be an image layer with a colour layer, or two image layers.

Read the full article


Voyeurism: Mutation and Object Observers

I don’t write much in the way of production-ready code at the moment, so some of the cooler recent developments in JavaScript have passed me by. In this post I want to address that with a look at a couple of nice new(-ish) features: mutation observers and object observers.

I remember reading about mutation observers a little while ago, but didn’t pay them too much attention as they didn’t have broad browser support and weren’t immediately useful to me. When I recently saw object observers land in Chrome (36) Beta, I realised that I should go back and learn about them. So I did.

Read the full article


Archive by category and date