Is it possible to switch a certain Stack Exchange site's interface (as a personal preference) to the theme used by beta sites?

Some sites have flashy decorations or unreadable fonts (I prefer to disable antialiasing on fonts). It would be nice to have an option to see a site with the "beta" theme.

If there's a solution using custom styles, I would accept that as an answer.

  • 1
    Or if you prefer meta.stackexchange.com/questions/64697/…
    – random
    Nov 3, 2013 at 4:52
  • 1
    y u do dis man? I'm not talking about making one site look like the other. It's not an exact duplicate. Questions are only related in topic. Default theme is always there and it's always managed and updated. All I'm asking if it's possible to change any site's theme to that, not to another site's theme. Perhaps some css file swapping can be done, that'd be fine for me. Nov 3, 2013 at 4:55
  • Which link are you talking about? The one about new themes or the one where you can select a theme from another site, maybe that site is in beta still, and using that
    – random
    Nov 3, 2013 at 5:05
  • 3
    Why was this re-closed? I don't get why you're doing this still. My question is not an exact duplicate of any of those. I'm asking for a way to make a SE site look like it's in beta stage. All beta sites look the same and I bet all it takes is to just switch current design css file string to beta string. I just don't know myself how to do it. Nov 3, 2013 at 5:52
  • 1
    A beta site is another site. Another site's theme is what you want to have the option of using
    – random
    Nov 3, 2013 at 13:26
  • 3
    @random not really. I agree it's not a duplicate, reopening. Feb 17, 2016 at 12:52
  • 1
    Me too! (actually a proper comment in this context) Feb 17, 2016 at 13:26

3 Answers 3


Here's a quick JS hack that seems to do the trick:

$('head link[rel=stylesheet]').attr('href', '//cdn.sstatic.net/Sites/' +
    (/\bmeta\./.test(location.hostname) ? 'betameta' : 'beta') + '/all.css');

or, if you don't like jQuery:

var beta = (/(^|\.)meta\./.test(location.hostname) ? 'betameta' : 'beta');
var link = document.querySelector('head link[rel=stylesheet]');
link.href = '//cdn.sstatic.net/Sites/' + beta + '/all.css';

It shouldn't be too hard to wrap that in a user script. In fact, I just made one. Use this link to install it (v0.5.2).

Note that there's no guarantee that the specific style sheet URLs used by this script will continue to work, especially as they don't seem to be used by SE any more. (Even beta sites have their own style sheet each nowadays, even though they all look the same.) But for now, it seems to be working.

A minor but hard-to-fix bug is that, since user scripts normally run only after the DOM has fully loaded, the normal site style may appear briefly until the script runs and replaces it. I did manage to come up with a trick to make the code run a bit earlier, using @run-at document-start and the MutationObserver API, but it's still not perfect (although the latest version does get pretty close).

Also, note that some SE sites do have custom HTML, which may not be fully supported by the generic beta CSS. The custom header at Photography, for example, looks pretty awful with the beta skin, although at least it's still more or less usable. The latest version of the user script injects an additional #custom-content { display: none } CSS rule that should hide such extra content on most sites.

  • Do you happen to have one for the chat too?
    – kuchitsu
    Jun 8, 2016 at 14:56

This is a great idea

worldbuilding.SE is in the process of receiving its own design.

A first iteration of this design has already been presented. The response has been largely positive, but some are concerned that it will stand out too much. (1, 2) And frankly, I can see why, I love the suggested look, but it is very in your face. And yet, it seems very difficult to create a fitting design without standing out too much.

The ability to turn of designs (and switch them for the one sites get after graduating but before getting a custom design) on a per-site basis seems like a perfect solution. It shouldn't be too hard to implement or maintain (the design already exists anyway).

This is what reddit offers, it does lead people to ask if they can't just turn off all custom subreddit styles by default, but this is largely because the mods of a subreddit can freely create their own custom css, a problem Stack Exchange won't face. Still, perhaps an option to turn off all custom designs wouldn't be terrible.

It is important that this is built into the site

And not achieved by a userscript, that way people don't need to look too far for it and will be less likely to be turned off by the site before discovering that the design can be turned off. This also has the added benefit that it is less likely to stop working some day.


There is a user script on Stack Apps, and it looks fairly neat. But I can't exactly get it to work. If someone can expand on it, then it would serve the purpose (with even more features)!

The Stack Exchange Theme Switcher. That's it.

  • not sure but I think site design has changed since it was last updated and it might be incompatible with current styles Feb 17, 2016 at 18:19
  • @user1306322 As far as I can tell, it collects the design dynamically, and it doesn't hard code design files. It may not load most the newly launched sites (that just entered beta) - but those will be the same things as all other beta's anyway.
    – Zizouz212
    Feb 17, 2016 at 18:22
  • This better fit as comment, at best. Linking to ancient script, which is broken due to design changes by now, isn't really helpful as a full answer. May 25, 2016 at 14:10

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .