The character
#
can also mean a hyperlink to an element with the specified ID. So, browser may be looking forward that element and if it does not exist it simply stops. URLs can be HTML encoded so that when you are going to use those special characters as values, they are decoded back to their actual forms, skipping the URL interpretation.
Ever wondered why is a white-space written as %20?
Not just #, but other special characters can also be encoded so that they can also be used as data and not as a special character in URL, like
&
or
=
character sign. Please refer this,
http://www.w3schools.com/tags/ref_urlencode.asp[
^] to learn more on that.