Firefox UI Gripes

A simple search for “Firefox 3 ugly” shows exactly how many people find the new “native”-ness of Firefox not so pleasing. The problem isn’t just about a non-uniform theme, but the fact that every control looks hacked together and an attempt to duplicate the looks and feel of native controls, instead of straight away using them.

This is not a Mac only phenomenon. I noticed this first on Windows when third-party shadow applications like Y’z Shadow would add a drop shadow to Windows’ native context menus, but Firefox menus were simple and shadow-less. But Windows’ own UI being so non-uniform, the difference didn’t strike at that time. After switching and using a Mac for more than half a year (and seeing what the various controls /actually/ look like), I can safely say Firefox needs to rethink their UI strategy.

Simple case: Add a border definition for your INPUT elements and see what happens to the focus highlight. Remove the definition, and you’ll see it pop back in. This is an attempt to duplicate native text box highlighting that Firefox gets wrong because they depend on a master stylesheet, which can be easily overwritten. Digging deeper, the problem becomes clear when you add a style to any form controller. I don’t mean to nitpick on a retarded level, but the way it stands out actually detracts from the experience more than what it adds.

The problem is Firefox’s XUL foundation. XUL is a mashup of the same languages that build the web. The problem with making your container configurable in the same language it is meant to render/run/interpret is clear: how does it effectively differentiate what is meant for the container and what is meant for the contained content. While a stylesheet embedded in a web page cannot change the browser behaviour, it can change how the browser behaves with the page. The lack of an inextensible priority system is an inherent flaw of CSS1, which XUL has inherited.

I’m not questioning Mozilla’s design decisions for the foundations of Firefox. Obviously they’ve got it correct, if Firefox is eating away at IE’s share and is a favourite with designers and developers alike. I am questioning their design decisions for the interface (telling themselves that they’re trying to make it look native). I’m not a big fan of Safari (or Opera for that matter), but its integration with the OS makes it comfortably uniform, which is always a good thing.

Mozilla has to change Firefox for Mac. They should be using the many existing controllers offered natively rather than trying to duplicate them. Either that, or re-work their XUL GUI toolkit to be able to handle more cases than it does right now. One way or the other they have to make Firefox feel like a part of the OS, and not a bastardised attempt at duplicating it.


  1. There is no clear exception handling, and nothing can be marked “read-only” or “non-changeable”. Anything that follows a previous definition can be used to overwrite it in more than one way, which can be nuisance because they break the original intent of the designer with extensions like Stylish. 

Copyright © 2006-08 Aditya Mukherjee | Valid XHTML 1.0 Transitional Valid CSS!