Политика браузеров такова, чтобы любому пользователю предоставить свободный доступ как исходнику html страницы так и к картинкам на страницы. Обычно всё это делается через контекстное меню. Значит надо искать способы, чтобы пользователи не могли вызывать это меню.
С выходом в свет появилась возможность управлять меню. Теперь в тэге <IMG> можно использовать событие oncontextmenu которое обрабатывается каждый раз, когда контекстное меню собирается появиться на страничке. Если перехватить это событие и возвращать false, то контекстное меню не будет появляться. Поэтому если использовать
Здесь использован тэг <IMG> для отображения прозрачной картинки GIF с теми же размерами чтои реальная картинка. А затем, при помощи стиля в качестве фона установлено нужное изображение. Данный приём работает в Internet Explorer 4.0.
Однако, это ухищрение не будет работать в Навигаторе, а нижеприведённое будет:
Этот код фактически проделывает тоже самое - поверх реальной картинки помещается прозрачное изображение, а сама картинка делается фоном тэга <DIV>.
И помните, что пользователь очень захочет получить картинку, то он всегда сможет посмотреть исходник странички и вычислить точный путь картинки. Так что шипко не обольщайтесь, данные ухищрения расчитаны на неопытных юзеров :)