24

I've got a Mac Mini that I'm using as a Home Theatre PC, and my only real complaint is that I can't set a default zoom level in Safari. It's hard to read all that tiny text from 7 feet away from my TV set, so I'm always zooming in.

So: is there some extension or hidden hack way to force Safari to zoom in automatically?

hairboat
  • 2,893
  • 17
  • 50
  • 72
Tim Sullivan
  • 353
  • 2
  • 7
  • 14
  • 1
    The "default CSS" and "All Pages Zoom plugin" methods breaks a good number of sites, most notably Apple's own Developer Member Center site. For example I've set the default to be zoomed out (75% for CSS or 80% for All Pages Zoom) and the site doesn't fill the screen. [Screenshot](http://i.imgur.com/Zbyxqv8.png) – adib Oct 06 '14 at 00:51

7 Answers7

17

According to this post from Apple's Safari Support discussion forum:

1) Create a file named defaultzoom.css (or any name you like, just make sure it has a css extension.)

2) Copy and paste in the following:

    body {  
      zoom: 130%;  
    }

change 130 to whatever number suits you. >100 means zoom in, <100 means zoom out. Don't forget the % percent sign!

3) In safari, go to Preferences > Advanced. Under style sheet, select Other... and point to the file you created.

4) You may need to restart safari for the change to take effect.


[In the above, both the emphasis and code formatting (for non-code-related text) were added to the original quote by Am1rr3zA].

Am1rr3zA
  • 13,009
  • 14
  • 65
  • 88
  • 4
    I can verify that this works in Safari 5.1 under Lion. I didn't even have to restart; it immediately took affect on the page I was viewing. – Armentage Sep 16 '11 at 01:00
  • 1
    @Armentage Same for Safari 7.0.5 under Mavericks. – yurkennis Jul 05 '14 at 15:55
  • 1
    This "default CSS" and "All Pages Zoom plugin" methods breaks a good number of sites, most notably Apple's own Developer Member Center site. For example I've set the default to be zoomed out and the site doesn't fill the screen. [Screenshot](http://i.imgur.com/Zbyxqv8.png). – adib Oct 06 '14 at 01:11
  • body zoom does not work for macOS Sierra. – Fish Monitor Jun 15 '17 at 10:14
17

In the latest version of Safari (11), go to:

Safari -> Preferences -> Websites -> Page Zoom

There you can set the default page zoom for all sites or a specific site.

This seems to be a native feature of Safari now (the Page Zoom setting under the Advanced tab in preferences is gone.)

enter image description here

pmagunia
  • 919
  • 7
  • 12
4

As Am1rr3zA mentioned, you can select a custom style sheet from the preferences:

I have added these rules to my safari.css file:

html {
    zoom: 125%;
}
img {
    zoom: 75%;
}
@media print {
    html {
        zoom: 100%;
    }
}

It has a lot of annoying side-effects though. But ZoomBySite and AllPagesZoom have the same side-effects, and there is also a noticeable delay before AllPagesZoom changes the zoom level.

Lri
  • 101,672
  • 19
  • 221
  • 272
  • 1
    I’d replace `body` with `html`, as the `` element can be styled too. – Mathias Bynens Mar 29 '12 at 16:07
  • 1
    This methods breaks a good number of sites, most notably Apple's own Developer Member Center site. For example I've set the default to be zoomed out and the site doesn't fill the screen. [Screenshot](http://i.imgur.com/Zbyxqv8.png). – adib Oct 06 '14 at 01:12
4

There is a wonderful safari extension, SafariMagnifier, which can set default zoom-in scale for every page.

http://www.wannseii.com/safarimagnifier/

3

If you go to "preferences" in the Safari tab and then to "advanced" you can click the "Never use font sizes smaller than" button and then pick the font size you want. Then you won't have to squint and get real close to the screen to read it anymore.

Orion
  • 31
  • 1
2

After 6 years, we finally have this feature in native Safari 10, so no more CSS or extension required (I used to apply CSS, but it broke many sites as pointed out by @adib):

enter image description here

UPDATE: Thanks to @wisbucky, Safari 11.0 actually has a new design. It can now memorize the zoom level per site. Also, we can custom this by the menu item "Safari" --> "Settings for This Website...", and the exact option "Page Zoom" can be found there. More detailed information can be found here and here.

Tsung-Ting Kuo
  • 121
  • 1
  • 7
2

All Pages Zoom

...allows to "easily set one zoom level for all websites and have it remembered." I'm using it in Safari 5.1.7.

You can download it from Apple's extension gallery under productivity or directly from the developer.

enter image description here

gentmatt
  • 48,122
  • 52
  • 193
  • 270
  • 2
    There's a small delay before the zoom level is applied though. And it breaks a lot of websites like setting a zoom level in CSS. – Lri Jul 31 '12 at 11:46
  • 1
    This "All Pages Zoom plugin" methods breaks a good number of sites, most notably Apple's own Developer Member Center site. For example I've set the default to be zoomed out and the site doesn't fill the screen. [Screenshot](http://i.imgur.com/Zbyxqv8.png). – adib Oct 06 '14 at 01:12
  • 1
    It also breaks command-up (to move to top of page) (but not command-down) when using Safari in El Capitan. – ceiling cat Nov 02 '15 at 04:32