I had a need to hide several fields when I wasn't in edit mode on a page and spent an awfully long amount of time trying various methods. In the end its easy but only because i bumped into another one of Andrew Connells ancient posts.
basically i added some fields which i would enter an image url to be used as a dynamic background image within a page instance.
This can be achieved by using the EditModePanel control which can be found within SPD under SharePoint Controls / Server Controls
simply drop the control on the page and put any fields you want to hide within the control.
This only works on publishing pages.
Andrews original post can be found
here