There really is no way to truly hide it. If it's HTML, it can be gotten, no matter what. You can use clever JavaScript to disable right click, etc... etc... But any clever user can disable JavaScript. You can use JavaScript includes to hide some of the code, but it does no good for HTML. (If you do a JavaScript include, then the user can just look at the path.)
The only code that you could hide would be code that would run on the server like ASP, ColdFusion, JSP, PHP, etc. Other than that, there really is no way. HTML was not designed for that, nor the browsers. That's why we have server side scripting to handle security stuff. If you're really that desperate, you can use flash to make the site, or if you're even more desperate, you can use images as each page - but that would only work for content. Even if you did that, of course, the user can just hit PrintScreen and be able to capture you content. They could also save the file as.
I don't think you should even bother to protect it. If it's important information, then don't put it up. Your code can't be all that ground-breaking.... there's a whole world out there of free scripts/content that anyone can swipe. Even if you were to encrypt it, the browser just displays whatever comes from the server. So I can go to your site, swipe your encrypted HTML, and just paste it on my page. The browser would need some in-between application layer where it could filter the encrypted version of your site. You could probably write an ActiveX script that the user can download, so it takes your encrypted page... but this gets complicated. The user will just move on and probably never install it.
Another option would be having accounts for user, and only let certain users that are registered see that information. Hope this was helpful.