SharePoint 2010 as well as SharePoint 2013, by default, has a strict browser file handling enabled. It is a default security measure. It prevents supported browsers from directly rendering content of some files or opening them in associated client applications. A good examle is HTML (or HTM) and PDF files. I mean the HTML or HTM file extensions here, not the ASPX file results that render normally.
When you store such files in a SharePoint document library, although you can click on their links and download them, they do not display directly. Rather the browser offers you the choice to download (save or save as) the file prior to opening. This means that the browser does not render HTML content itself and the HTML page does not display directly and user can just save it somewhere to open it later from a local disk folder.
Why? Because practically any Contributor can upload such files into document libraries. Whatever the page contains, such as scripts, might in some cases threaten security on the client browser side of unaware users who just click a link. Similarly, there have been several major exploits in third party PDF viewers, such as the Adobe Reader. As Microsoft clients do not update third party apps automatically, Microsoft just prevents their files from opening directly and exploiting the users automatically.
How this feature works? Although the HTTP header content-type of the HTML and HTM files is correctly set to text/html, there is also another header included with responses for such static files. There is HTTP header called X-Download-Options with value of noopen. This HTTP response header instructs client browsers (who support this header) from directly rendering the content or forwarding it to any associated client application.
If you want to disable the X-Download-Option header for some particular content types, you must use PowerShell to allow the content types on server per web application:
$webApp = Get-SPWebApplication http://mywebapplication.gopas.cz
# list the current allowed content types
$webApp.AllowedInlineDownloadedMimeTypes
# add the text/html mime type in the allowed list
$webApp.AllowedInlineDownloadedMimeTypes.Add('text/html')
$webApp.Update()
# you do NOT need to restart IIS in order to apply the settings.
In order to enable PDF files to open in associated reader app, you would do the same for MIME type of application/pdf.
Some internet articles sujest yet another method which might seem easier for many SharePoint admins. I would rather not go their way. It is a security measure anyway. The other method would be to change the global web application setting of Browser File Handling from its default Strict setting to the less secure Permissive one. Do not do that. This way you allow direct rendering of any file type and nobody knows where a threat may hide.