Come faccio a dire al browser che deve iniziare il download di un file invece di aprirlo?

Cioè: come faccio a downloadare un immagine senza che il browser la apra? e un file .pdf? uno HTML?

Ovviamente è escluso il metodo "click col destro, salva oggetto con nome"...

Scrivo qui perché nella sezione HTML mi hanno detto che era roba da PHP.
Comunque vanno bene anche soluzioni in JavaScript...