isn't a bug. It's like this:
you're on somedomain.com/foo.html
That's equivalent to somedomain.com/foo.html#
Get your hash the bulletproof way
she points out some interesting things about URL hashes.
Also, I suppose it's true that a disadvantage of using a real token (#bar) means if whatever has the id of "bar" ever loses that id or gets it changed for some reason... a non-zero but non-existant url fragment identifyer will not move the page or refresh it when clicked!
I use this on purpose when I'm using anchors for stupid CSS tricks and I don't want the users to get whisked away elsewhere, not even to the top of the page, if they were to click on it. Hence, my famous #void hashes. I have nothing with that id anywhere.
So anyway possibly # is safer. Though for some reason, like you, I feel I should link to a real token. Also, a lot of the time I don't really want to bring people to the very top of the page. Usually I want to bring them back to the top of the main content. So, back to the main h1 usually. If you do a page refresh, you'll get all the page info read out to you again: title, maybe page structure like number of links and headers, blah blah. If a user is brought back to just the main header or something, it should be clearer that there hasn't been a page refresh or a page change... they are still on the same page, just a different place.
Sometimes I think "back to top" should be more specific: "back to the list" or "back to the start of main content" or something.
No, I don't know of any browsers who don't follow that behaviour for plain # marks (however, know that webkit browsers will only move the visual focus, NOT the keyboard focus!). They all should. Empty hrefs are another thing entirely, and of course lack of an href is famous for mixed results (IE doesn't want to click on anything without an href).
Webkit sucks balls here if you're not moused.