Safari Wishlist

Safari is an excellent web browser and my current favourite. However there’s always room for improvement, and I thought I’d mention some areas where I think Safari needs a bit of attention. Some are missing features, others are bugs.

After posting my Wishlist for IE7 I think it’s only fair to also talk about the shortcomings of a really good browser. Maybe it will help Apple keep Safari at the very top of the browser pack?

  • Clickable form labels. I really like being able to click labels to interact with form controls, especially checkboxes and radio buttons. I find myself doing it all the time in Safari, only to realise that nothing happens. Trying to hit those tiny buggers can be really annoying.

  • Float + negative margins. Tommy Olsson sent me a mail a week or so after Mac OS X Tiger had been released, wondering if I knew of a problem with certain links not being clickable in Safari 1.3 and 2.0. I had a look at the site in question and found that the problem was caused by a combination of floats and negative margins. I’ve whipped up a quick test case for you to check it out. After a little bit of fiddling with the CSS I found that adding position:relative to the rules for any floated elements that also have negative margins fixes the problem. It shouldn’t be necessary though, right?

  • HTTP Accept header. I use content negotiation to serve my XHTML documents as application/xhtml+xml to browsers that support it, and as text/html to other browsers.

    The content negotiation script I’m using checks the HTTP Accept header sent by the requesting browser. Safari doesn’t send the specific MIME types it accepts in the HTTP Accept header, which means that it gets text/html even though it does handle application/xhtml+xml.

    While this may seem like technical nitpicking, serving XHTML as application/xhtml+xml does have the benefit of letting you check if a document is well-formed by just viewing it in the browser. Conformant browsers will refuse to display documents that aren’t well-formed. I currently have to use a Gecko browser or Opera to do that, but if Safari would announce which MIME types it accepts I wouldn’t have to.

  • View source syntax colouring. It would be awesome if Safari had syntax highlighting when you view source, just like Firefox.

  • Warning when closing a window with multiple tabs. I can’t be the only one to have accidentally closed a window with tens of tabs. Argh. Safari really should warn you when you attempt to close a window that has more than one tab.

  • Kiosk/projection mode. When doing presentations (preferrably using the excellent S5) you normally want to get rid of all the browser chrome and have the viewport fill the entire screen. Currently you have to use something like Saft to get that feature in Safari. Sure, that works even though it will cost you a few bucks, but it would be very useful if it was implemented in Safari.

  • Web developer toolbar. The Web Developer Extension is such an amazingly useful tool that I keep Firefox running all day even though Safari is my main browser. It would be fantastic to have something like it in Safari.

  • Flash of unstyled content. This is something that has started to show up recently. Plenty of sites, including this one, are now sometimes displaying a flash of unstyled content as the page loads. It looks a lot like what IE/Win does under some circumstances.

    It doesn’t happen every time, so at first I thought it was a problem with my copy of Safari. I’ve since seen it happen on several Macs, some running Panther, others upgraded to Tiger. I haven’t been able to pinpoint the problem, but it’s very annoying. Anyone know more about this?

    Update: I’m pretty sure Safari’s FOUC is related to Google ads. Compare the About and Contact pages (which don’t have ads) of this site to the Home page or any article page. No ads – no FOUC. Ads – FOUC.

  • Favicons stuck in cache. I changed the favicon for this site maybe a year ago. The old favicon is still being displayed in Safari. And I thought IE/Win had caching problems.

  • Sizing monospaced fonts. Safari has problems determining the size of monospaced fonts. I even wrote a whole post about it last year: Sizing monospaced fonts. It renders monospaced fonts smaller if you add a generic font-family to the list of fonts, which you are supposed to do. Very odd, and the latest versions of Safari behave the same way. Is this the way it’s supposed to work?

These are my current top Safari annoyances. Can you think of other areas where Safari needs improvement? Add a comment. If it’s a bug, feel free to post a test case so everyone can see the problem for themselves.

Posted on June 2, 2005 in Browsers

Comments

  1. June 2, 2005 by Mike O.

    The only wish I could think of for Safari is mouse gestures. Using Opera which supports them natively and Firefox with the mouse gestures extension has spoiled me very badly when it comes to this. Few things are more humbling to me than repeatedly doing mouse gestures in a non-enabled browser.

  2. One thing I’ve been sorely missing from a user point-of-view in Safari is type-ahead search. It’s the feature making me often launch Firefox instead of Safari even though it’s slower and more clunky in OS X.

  3. Safari is great though seems to have some quirks with forms, particularly anything involved with ASP. I spent about half an hour going through a Vodafone process to enable a pre-paid mobile only to get to the end and …. nada. This has happened with various e-banking forms etc. No problems with Firefox…

  4. Roger, I know you’re ideally looking for these things to be native to Safari, but have you tried these free extensions out?

    Syntax colouring: SafariSource SafariStand (lots of other free enhancements too SubEthaFari

    Favicon problem: Safari Icon Manager

    Getting around the close tabs problem: Taboo

    Mouse Gestures: Cocoa Gestures

    Web Development: WebDevAdditions

    For Jarko - Saft and Acid Search will both implement Find as you Type. More of these on PimpMySafari

    Saft is well worth the money - I wouldn’t be using Safari if it wasn’t for Saft.

  5. Well - looking at the source, Safari isn’t too great: There’s a lot of quick’n’dirty fixes in there. Getting Safari to use the latest KHTML-magic would help a lot. Even gmail would work reliably.

    A safari problem I have: When I download files from a local webserver via 802.11g, safari consumes both processors at about 80% each. How absurd.

  6. I’d really like a setting where, when clicking an AutoClick bookmark folder (the ones with square bullets that automatically open all the links inside in tabs), the current set of tabs wouldn’t be wiped out.

    This is especially an issue with RSS feeds, since AutoClick folders are really the only effective way to group a bunch of RSS links into one big feed. As it stands now, if I notice that my News RSS folder has been updated, I need to open a whole new window to view one new tab.

    Oh, and I’d really like the “Search in Google” and “Go to Address” contextual menu items to open new tabs, instead of using the current one. Even holding down Command doesn’t work.

  7. Hmm, I’m not sure if I would serve application/xhtml+xml to Safari. I’ve seen to many little problems while testing. Erroneous white-space parsing, failure to load some nested stylesheets, errors displaying non-roman (Japanese) characters,… all things that work fine when serving text/html.

    That flash of unstyled content is new to me. Possibly I look to much at cached data. (I don’t use Safari at all, except for browser testing when developping sites).

  8. June 2, 2005 by Roger Johansson (Author comment)

    Mike O: I’ve tried mouse gestures in Mozilla but never got the hang of it. Gotta try again I guess.

    Jarkko: Right, that should have been on the list. Search is much better in Firefox.

    Damien: That is probably more due to bad coding than problems with Safari.

    Jon: Yeah I’d love to see these things native in Safari. Extensions are OK though, and a few of the ones you mentioned are new to me. Will take a look. I already bought Saft ;-)

    Jannis: I’ve never looked at the source, and if I did I doubt it would make much sense to me. :-)

    Philippe: There are some glitches, but I’m hoping they would be fixed before the HTTP Accept header was changed.

  9. One thing that really bothers me, perhaps only me(?), is that when I right-cklick (you’re not using the one-button mouse, are ya’?), I want to be able to go back to the previous page, just like I can do in FF and IE. Perhaps that can be fixed with one of the extensions Jon was talking about… have to check that.

  10. The thing that bugs me the most about safari is the fact there’s no customisation option on the search box. Firefox lets me choose to search google.co.uk making uk only searches really easy to do.

    The bookmark handling is bad too. Really difficult to set up folders in the bookmark bar (I usually resort to duplicating one and replacing it’s contents). Moving folders around is better in the new version, but why they’ve decided that you need seperate bookmarks menu, bar and then just bookmarks I don’t know.

  11. At the top of the browser pack? Too bad it is tied down to an OS that is in the small minority.

  12. June 2, 2005 by Su

    I have no idea how I’ve never encountered anybody mentioning this. I thought I was doing something insanely stupid when I came across it:
    Create a new HTML document, with a set of the H* tags. Try to change the font-family to something other than the very most basic “web fonts”(say…to Zapfino or Impact) without explicitly setting font-weight.

    You can simultaneously pile on font-style, font-variant, text-transform, text-align, text-decoration, word-spacing, and letter-spacing, and it will do all of them, but no font change until weight is specified.

  13. June 2, 2005 by Tim Aaronson

    Safari has a cockemamie way of cycling through tabbed windows - CMD-Shift-} This requires two hands (unless you are left handed and mouse with your left hand). Yech!

    I.E. uses the more common Cmd ~ Foxfire uses CNTRL-Tab

    Should be customizable. Or better yet window cycling should be a behavior of OSX as it is in Windows.

  14. I don’t have a Mac, so occasionally ask friends who do, whether my websites work in Safari. Does anyone know whether the Safari background image placement bug has been fixed? I use negative placement of background images a lot to get nice hover effects for menu links:

    #menu a {background:#f00 url(sliced-up.gif) no-repeat 0 0;}
    #menu a:visited {background-position:0 50px;}
    #menu a:hover {background-position:0 -50px;}

    a is a rectangle, 50px high, placed over a picture of indefinite height. The third rule was giving me any other offset than -50px when hovering in Safari, often defeating the desired effect. Has anyone noticed this?

  15. Like Jon said, pimp my safari is a great resource for extending the browser. I used to use FireFox quite frequently just for the Web Developer Toolbar, but I’ve found the bookmarklets they’ve collected at PMS to be so useful that I no longer need it.

  16. June 2, 2005 by Dan Brentwood

    The thing that has bothered me the most about Safari is the fact that when filling out a form, you can’t tab to a combo box and use the keyboard to select from it like you can in Windows (I think this is a Mac bug more than a Safari one).

  17. AN x86 PORT PLEASE!

    I’d like to accommodate Mac users, but I don’t always have access to a mac… A stripped down x86 port that simply allows devs to correct rendering errors would be great.

  18. June 2, 2005 by Roger Johansson (Author comment)

    George: I didn’t comment on the bookmark handling since I never use bookmarks in browsers anymore. Well, that’s not entirely true: I do have a few in the Bookmarks Bar, but that’s it.

    Tim: All keyboard shortcuts are customisable in Mac OS X. Go to System Preferences - Keyboard & Mouse - Keyboard Shortcuts and click on the + button to add your own.

    Paul: I remember seeing something about that, but I think it only happened in early versions.

  19. June 2, 2005 by Roger Johansson (Author comment)

    Dan: You can. You just need to turn that feature on: in System Preferences - Keyboard & Mouse - Keyboard Shortcuts, check “Turn on full keyboard access”. Then go to Safari Preferences - Advanced and check “Press Tab to highlight each item on a webpage”. You can now tab to and use all form controls.

    Dave P: Safari for Windows? Why not. I’m sure someone can tell us why Apple won’t do that (or why they will).

  20. These aren’t a part of Safari but fixes until these become part of Safari.

    Cocoa Gestures is a great add-on and free for OS X. Use it to do mouse gestures in any Cocoa application like Safari.

    There is a Web Developer extension available for Safari and there is a color code add on to Safari I use them and can’t remember their names and I am on a Windows PC right now being tortured by using it.

    Safari 2.0 has a warning when closing multiple tabs that can be turned on or off.

  21. Good list, but a couple of things left me confused. For example, are you saying you wish there was “no warning when closing a window with multiple tabs” or “no web developer toolbar”?

  22. June 2, 2005 by Roger Johansson (Author comment)

    Kim: Hehe, you’re right, the wording there was a bit confusing. Fixed now.

  23. [17] Dave, Safari widely uses parts of Quartz/Aqua for its function and that’s one of the problems in backporting Safari code back to KHTML, so I really don’t suppose there will be this possibility once.

  24. Personally I most long for type ahead find. It’s awesome in firefox.

  25. June 3, 2005 by shoeless joe

    Is it just me? Why can’t they, or haven’t they, added the apparently simple feature to specify cycling on animated GIFs etc? Those things drive me batty. I use privoxy pretty much just for this, as I have ripped Flash out altogether, but keep it around, hidden, for when there is some Flash animation (note, not a annoying Flash advert) that I do want to see.

  26. June 3, 2005 by Justin W

    I just tried out switching from Firefox to Safari, but honestly I don’t think its worth it unless you have saft. Why pay $12 for the functionality that Firefox already has? My main concern is specifying keywords for bookmarks (a function only available through saft).

  27. June 4, 2005 by Paul Pomeroy

    When you open a bookmark folder on the bookmark bar and then click on another folder (in the bar) it won’t open until you click on it a second time. A small thing, I know … Just one that always strikes me as a usability flaw when it happens (usually when I’ve accidentally opened the wrong folder and then click on the right one).

  28. Justin - there are other free extensions that allow you to use shortcuts, such as Sogudi.

  29. I agree with Philippe; Safari’s XHTML support isn’t finished yet. It’s better than the current release of KHTML, but is still has a couple of the same shortcomings:

    KHTML bug entry

  30. June 6, 2005 by Paul Pomeroy

    Seems to be my day for finding things that work in 1.2 but not in 1.3 (v312)

    CSS Drop Shadows -> works on text blocks but not images (shadow on right side 10px(?) to the right of where it should be).

    Elastic Design -> “elastic image” is not stretched but tiled. Bumping the text size way up and then way down leads to much strangeness …

  31. June 9, 2005 by r0ss

    I’m a web designer who likes both Firefox and Safari. I like Safari because it’s fast and fits in well with the OSX as a whole. I like Firefox for the web developer toolbar and probably my favorite, the Tidy extension. If Safari had a Tidy extension I would probably stop using firefox. For those of you that dont know waht Tidy is I’ll give you a little info. It’s pretty simple but it tells me if a page validates cleanly, has errors in the code, or if it’s just one big mess. All from just looking at a little icon on the bottom right of the browser window. At work we want all or most pages to validate clean css and xhtml. Since I’m coding all day every time I upload and preview in the browser I know without having to go to the offical validator site if my site has any errors or not. This may not seem like a lot to most but to me it’s very important. I take pride in writing clean code. So, until I can get something similar to Firefox’s Tidy I’ll only use Safari every now and then.

  32. That if you middle click on a link in a tab group then it opens all the links in the group as it does not, but does not get rid of the currently open tabs. Firefox does it right.

  33. June 9, 2005 by Tobias

    I think no one mentioned it yet, but I use Firefox on Windows and when I go to use a mac I can’t handle the amount of Adverts on web pages (I can’t add extensions to Safari at college which is where I use it the most). Adblock is definetly one of the best extensions for firefox.

    Also the point about apple porting Safari to windows. I very much doubt they will do this but couldn’t you just dual boot with linux and use Konquerer instead? Its pretty much the same besides the look isn’t it?

  34. June 13, 2005 by Roger Johansson (Author comment)

    Anders: Type ahead find would indeed be great.

    shoeless joe: Yes, I miss some of those fine-tuning features as well.

    Tobias: Yeah a built-in adblocker would be appreciated by many. I doubt they will ever do that though. I’m not quite sure, but I think there’s more than just the look that makes Safari different from Konqueror.

  35. June 13, 2005 by Roger Johansson (Author comment)

    Paul Pomeroy: Right, the drop shadow on the image is messed up in Safari 2.0 (412) as well. The “Elastic Image” example works though.

  36. June 13, 2005 by Roger Johansson (Author comment)

    Regarding Safari on Windows - that may not be too far off considering this: Nokia develops a new browser for Series 60 by using open source software. If Nokia can use it in phones someone should be able to make it work on Windows.

  37. Safari’s lack of label clickability bugs me too, so I wrote a little javascript function to enable it. You can read about on my site.

  38. June 25, 2005 by Paul Pomeroy

    Roger: Glad to hear the “elastic image” works on 2.0. I’m on 1.3 (312) and it’s busted … I thought 1.3 and 2.0 were built on the same “engine,” but apparently there are some differences.

  39. I hate the fact that when hovering over text hyperlinks in a Flash movie, Safari doesn’t change the cursor to a hand!

    (If anyone knows why not, please let me know!)

  40. “I hate the fact that when hovering over text hyperlinks in a Flash movie, Safari doesn’t change the cursor to a hand!”

    ME TOO!!! is there any fix to this. please let me know.

  41. Roger, I can confirm the Google AdSense-related FOUC in Safari. I have observed the same effect and that is the cause. Not sure why though…

  42. November 1, 2005 by Daniel Worthington

    Su (Comment 12): I was confused by this before as well. I believe you must specify font-weight:normal with a font like Impact because that font has no bold weight, and (like most browsers) Safari renders headers in bold unless you specify otherwise. So until you specifically instruct Safari to render normal weight Impact, it will fall back on another font (Helvetica, I think, if you don’t specify another backup).

  43. Here’s some that you didn’t have up there, but I think would be nice:

    1. Print Selection. Sometimes I don’t want to print all 13 pages with banners, ads, and the like.

    2. Open _blank target links in a new tab in the existing window. I know this can be done via Safari Stand, but it would be nice if this was an option in the preferences.

    3. An obvious keyboard shortcut to the Google quickseach box in the top right of the window. I believe there is one, but I forgot it, and as I remember it was an extremely random one.

    4. A standard plugin API to follow. Conflicting plugins = bad. Or another way to resolve conflicting plugins.

  44. In choosing ‘empty cache’ from Safari menu won’t clear Favicons as Safari stores favicons in a separate cache. You need to empty the icon cache separately. In most Mac OS it will be in User>Library>Safari>Icons.

Comments are disabled for this post (read why), but if you have spotted an error or have additional info that you think should be in this post, feel free to contact me.