Is fullZoom really zooming ?

Please get rid of your geek attitude, your CS knowledge and put yourself in the position of a newbie or a marketing person. Zoom... What's a zoom feature ? For just everyone, a zoom feature is a magnifyer : everythings looks bigger AND unchanged. If you're using a 3x magnifyer, the object you're looking at is three times wider and higher in the magnifyer, period. That's what a zoom does. Always.

But not the zoom in Firefox... Let's see it with a page we all know, http://planet.mozilla.org :

FF 1:1
FF 150%
Firefox 3, 1:1 Firefox 3, 150%

Take a look at the above... The screenshot at the right is not a zoomed view of the left one because the vertical gutter at the right-hand side of the screen is still attached (at its right) to the right edge of the viewport while it should be attached to the right edge of the content area. The width of the content area (the blog article) is equal to its normal width multiplied by the zoom factor. Please note the presence of an horizontal scrollbar even if all the visible contents fits into the viewport...

While we're at it, let's see what other browsers do here :

IE7 150%
Opera9 150%
IE7, 150% Opera 9.23, 150%

Contrasted results here. Firefox is clearly on the Opera track (title of bug 4821 is "(pagezoom) – Full zooming not functional (images, objects as well as text) (page zoom like opera)") while Internet Explorer chose to go in another direction.

From a user's perspective, only IE7 zooms. The fact that a geek can analyse the web page and say "yes, that's because the page has a CSS rule making the gutter stick to the right edge of the viewport" is irrelevant here. Zoom is a UI feature, not a CSS feature. From an average user's perspective, Opera and Firefox are NOT zooming since the article area's width in zoomed view is not only not equal to the normal content area's width multiplied by the zoom factor, but it's even smaller than the original one ! Reusing the paradigm of a zoom or a magnifyer, this is not understandable. Why does Firefox zoom The New York Times correctly and not Slashdot ? The iPhone does zoom, IE7 does zoom ; Opera and Firefox don't.

I have the feeling this has to be changed and Firefox has to abandon the wrong Opera way of doing zoom. In zoomed view, positions and dimensions relative to the viewport have to consider viewport width and height that are also multiplied by the zoom factor. Opera paved the way here, implementing zoom loooong before anyone else. But what they do is not enough. Doing right a real zoom is:

  1. tremendously important for accessibility reasons
  2. very important for Mobile Firefox and could become absolutely critical

Just my two eurocents.

Update: comments allowed.


1. On Monday 11 February 2008, 14:27 by Chris Cunningham

The thing is, we should look at the expectation of the user. The point of the zoom function is not just to increase the number of pixels allocated to something. It's to make it easier to read pages. If you can increase the size of elements without pushing anything out of the viewport, that's great.

Whether or not the result has an identical effect to putting a magnifying glass over the screen isn't the point. Users don't necessarily want to put a magnifying glass over the screen. They just want to be able to examine things in closer detail.

As for your bullet points:

* Accessibility isn't hurt by intelligent zoom in any way that I can see. Magnifying-glass style zoom is already catered for at an OS level anyway, for users who need it.
* For mobile devices, the main thing isn't zooming _in_, it's zooming _out_ so that a low-resolution device can display a page in its entirety so that users can then locate the bit they want to read and zoom back in. In this case, intelligent zoom is a _great_ feature as it fits more elements on-screen in the same spacial locations they would be at normal resolution.

- Chris

2. On Monday 11 February 2008, 14:55 by Henri Sivonen

Horizontal scrolling and small text are both bad. I’d say horizontal scrolling is worse of the two. I preferred the old text-only zoom of Firefox over the “real” zoom of Opera. I don’t like it when the horizontal scroll bar shows up so easily in Minefield when zooming.

On mobile (phone and N800), most of the time I prefer to sacrifice desktop-style layout in order to get rid of horizontal scrolling.

So while I see the point of having the infrastructure for doing iPhone-style zooming, I definitely want to be able to make text bigger without jumping out of the frying pan into the horizontal scrolling fire.

3. On Monday 11 February 2008, 15:03 by Robert Accettura

I think it's important to be able to do both. What's popular today during what is really the infancy of small-screen web browsing may not be popular for very long. Being in a position to adopt what the user wants quickly is the best approach.

Right now, I think most want an IE Zoom feature.

4. On Monday 11 February 2008, 16:04 by Jacques

Merci de permettre les commentaires.

I prefer the way Firefox does zooming for a simple reason. If the web programmer sets a min-width value to the whole web page, the whole layout will be kept.

So, yes, I make sure setting a min-width value to help out users that have small windows, or that uses Firefox 3 full zoom.

So please do not change Firefox 3 behavior. Instead, enhance the way you layout your web pages.

5. On Monday 11 February 2008, 16:11 by funtomas

Daniel if a user expects what IE does, then you're right but I suspect the user will appreciate not to scroll horizontally. Maybe the function name is misleading and should be changed to something more appropriate but the behaviour, from the user perspective, I assume is much better, more usable and accessible, period.

6. On Monday 11 February 2008, 16:56 by Jeria

"The point of the zoom function is not just to increase the number of pixels allocated to something. It's to make it easier to read pages."

This is exactly what text zoom (feature is currently removed) is for.

I expect the page to be zoomed if I zoom, not make things bigger and squish them together.

7. On Monday 11 February 2008, 18:10 by Mono

Just as with the full zoom vs text zoom discussion, the problem is, again, that developers are trying to guess what the user needs/wants, but they aren't actually "walking in the user's shoes". Most developers have high-resolution, high quality flatscreens, and are young people with good vision. They don't really need/use these accessibility features daily, as some of us use them.

I switched from IE6 to Firefox *primarily* because of the text zoom feature (which IE lacks), and I use zoom daily. The primary annoyance when using IE was always the inability to magnify most pages. Now the situation is better as IE7 has some half-broken zoom, but I can't read some pages without scrolling right-left all the time! Believe me, making it impossible to zoom a page without having to scroll horizontally, no matter how wide the window is, is not going to make people's lives easier ... This discussion shouldn't be about "what people expect when they see the word 'zoom'". It is about what makes the software more accessible.

Also, the IE-style zoom does not deserve the "zoom" name any more than Firefox's zoom. With Firefox, I can get a magnified copy of the page if I zoom in, and resize the window in the same proportion. With IE, it is not possible to make the scrollbar go away, even if the window is resized: IE-zoom is of no use to people with very high res screens.

Daniel, your Zoom It! extension is very nice and useful. But it is just a very limited use case for zooming, and it seems that you are blinded by this ... Don't forget that web pages are not paper, their advantage is that the text can be reflown on them!

8. On Monday 11 February 2008, 19:45 by Dao

IE's way of zooming is quite annoying ... Having to scroll two dimensions is a showstopper for a desktop browser. It's a different story for a phone, where you have a much smaller screen.

I guess MS had to do it this way, because their layout engine wouldn't support something more useful.

9. On Monday 11 February 2008, 19:53 by RichB

The reason for _proper_ IE7-style zoom is the same reason the iPhone has proper zoom - high DPI screens.
I wish this meme were more well known.

10. On Monday 11 February 2008, 20:28 by Sporniket

Hummm, on the French Version of Firefox, the option is in "Text Size->Smaller/bigger", thus correctly labeling the function, to my mind.

11. On Monday 11 February 2008, 21:26 by Robert O'Callahan

I responded to this issue in detail last time Daniel brought it up:

Nothing's changed since then. Our (and Opera's) approach is the most appropriate approach for a desktop browser. I think it's also a good solution for accessibility; it lets users increase the size of all elements without forcing them to scroll horizontally to read every line.

For quick zoomed-out panning on mobile devices, a "magnifying glass" approach may be better. We can support that today using drawWindow and foreignobject, and in the future we could easily support it directly in the engine.

I don't care what we call it. If "zoom" is the wrong name for what we do, call it something else.

BTW "text zoom" is still available in the engine. In fact I think we're planning to add some text zoom UI back to Firefox. Even if we don't, there will be extensions to re-add that functionality.

High-DPI screens are a slightly different issue. We support pixel size increases for high-DPI screens directly in the engine. Try setting layout.css.dpi in about:config...

12. On Tuesday 12 February 2008, 00:49 by anonymous

I would recommend to bring SVG zooming back up to par with Adobe's horrible plugin, as well.

13. On Tuesday 12 February 2008, 05:15 by Seamus

Ironically, the first page I zoomed with ZoomIt was Mozilla Planet. I initial reaction was, "where is the zooming, is this right?" With two seconds I remembered all the stuff about CSS liquid layout.

I totally agree that IE7 "zoom" makes more sense to the user.

14. On Tuesday 12 February 2008, 15:24 by yves

My opinion is to continue to zoom like opera.

From user point of view, real zoom makes browsing in a site more difficult.

for accessibility, magnification is OS problem, not browser problem. OS magnification tools are sufficient for that. I do not agree with the browser-becomes-the-OS way.

15. On Wednesday 13 February 2008, 01:16 by MT

Opera and currently Fx3 uses *smart* zoom while IE7 uses stupid literal "zoom" that just easier to implement for programmer (after all, Microsoft "had" to include "new" version of IE into Vista, but unfortunately had no enough time to make quality browser) but not better for end user.

IE7's literal zoom is useless and harmful for user and is in relationship with unavalable text size changing on pages with pixel sized fonts, that is good for visual pixel-perfect polygraphic designer and very, very bad for user that can't make text bigger to make it just more readable.

Smart zoom that zooms page without appearing horizontal scrollbar (!) is only usable zoom approach that may make sense in desktop browsers at all (if we abstract from the fact that just text zoom like Fx2's "text size" feature is even more usable).

16. On Wednesday 13 February 2008, 16:25 by grosnaze

Une proposition pour un nouveau nom:
zoommo - concaténation de zoom et mozilla ...