Gmail использует #, когда вы нажимаете на письмо, чтобы различать страницу (+ действие Ajax). http://mail.google.com/mail/#inbox/1238e709e37a1394
Я нашел: Google использует # вместо поиска? в URL. Почему?
В FF или Chrome вы можете использовать Forward и Back без обновления между этими URL-адресами: http://X.com/MyPage.aspx#1 http://X.com/MyPage.aspx#2 http://X.com/MyPage.aspx#3
Но в IE обновляется страница, и она не учитывает параметры после #, когда выполняется обратное действие.
Как Gmail совершает магию?