19

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?

  • 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 – adib Oct 6 '14 at 0:51
12

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

16

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].

  • 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 1:00
  • 1
    @Armentage Same for Safari 7.0.5 under Mavericks. – yurkennis Jul 5 '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. – adib Oct 6 '14 at 1:11
  • body zoom does not work for macOS Sierra. – Fish Monitor Jun 15 '17 at 10:14
4

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

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

  • 1
    Unfortunately the link is dead. – Dan Sep 8 '11 at 7:00
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.

  • 1
    I’d replace body with html, as the <html> 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. – adib Oct 6 '14 at 1:12
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.

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

  • 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. – adib Oct 6 '14 at 1: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 2 '15 at 4:32
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.

  • 1
    I don't see this option in Safari 11.0 – wisbucky Oct 17 '17 at 21:15
  • 1
    @wisbucky: updated the answer accordingly, thank you very much! – Tsung-Ting Kuo Oct 19 '17 at 1:17
  • 2
    Thanks for the update. Note, however, that there is no longer a global page zoom setting. You have to set this every time you visit a new site. :( – wisbucky Oct 19 '17 at 21:40
  • @wisbucky: I believe so, and thank you for keeping this answer up-to-date! – Tsung-Ting Kuo Oct 20 '17 at 23:07

You must log in to answer this question.

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