Safari 6: How to change default fonts?

This is probably a duplicate. I can't imagine I'm the first person to notice this.

It seems that Safari 6 has removed the appearance tab from the preferences, and with it, the ability to change the default fonts.

How do I change the default fonts for Safari 6?


Solution 1:

You can still use defaults:

defaults write com.apple.Safari com.apple.Safari.ContentPageGroupIdentifier.WebKit2StandardFontFamily Georgia
defaults write com.apple.Safari com.apple.Safari.ContentPageGroupIdentifier.WebKit2DefaultFontSize 16
defaults write com.apple.Safari com.apple.Safari.ContentPageGroupIdentifier.WebKit2FixedFontFamily Menlo
defaults write com.apple.Safari com.apple.Safari.ContentPageGroupIdentifier.WebKit2DefaultFixedFontSize 14

Another option is to set a CSS file like this as as the default style sheet in the advanced preferences:

body {
  font: 16px Georgia;
}
pre, code, tt {
  font: 14px Menlo;
}

Both options have precedence over the default stylesheet but not over styles specified by websites. So like the preferences in Safari 5 and earlier, they mostly apply to pages that would normally use 15px Times or 13px Courier.

Solution 2:

Serenity Caldwell wrote an article on Macworld when Mountain Lion was first released as a dev preview:

Safari no longer offers an option to set default fonts and sizes (though you can upload a style sheet or force the browser not to show font sizes smaller than a certain number)

You can do this via an extension called User CSS. Pretty simple, add your custom CSS and it will override the styles.

There is also an Apple discussion thread about this, but nothing important has come of it so far. One thing that was mentioned was using HelveticaTheWorld, which changes all the fonts to Helvetica. Not terribly useful unless you want Helvetica everywhere... Another extension mentioned is Google Fonts in Safari. It allows you to pick from the Google Fonts library.

As of right now, there is no other way to change the fonts in Safari. I would suggest you submit Apple feedback to see if you can get this added back in.

Solution 3:

Indeed, this is trivially easy with a simple style sheet that overrides the default "body" font. All you need is all of three lines long:

body {
    font: 12px "Lucida Grande";
}