You cannot make HTML invisible or hide it. By making a template it should pop up warnings if they try to edit content outside of the specified areas. Alternatively you could consider the use of a CMS whereby you skin the CMS and leave the content/pages for them to update.
Something I've done in the past is used a .php include file that contains only the text and images that the non-htmlers can edit as much as they like.
The actual layout of the page is in a separate .php file that just calls the include.
That way there is absolutely no way they can monkey with the layout.
There would be two files, for example news.php, that would have all the layout html of the page and a tiny include script. That tiny script tells the server to gather the contents of the content.php file and write them in to the news.php page when viewed on a browser.
Your non-coders would use content.php and never open the news.php page.