Sto impazzendo cercando di capire la logica delle codifiche e dei charset delle pagine.

Come faccio a fare vedere univocamente da tutti i browser i caratteri corretti?

Ho delle pagine che a volte visualizzano i caratteri accentati correttamente, altre volte che invece vengono sostituiti da strane A maiuscole (Ã).


Ho fatto una prova.
Ho preso una pagina e nel body ci sono lettere accentate 'pure' (inserite da tastiera) e altre come entità HTML (è eccetera).

Ho salvato le due pagine cambiando solamente il charset: una su "UTF-8" e l'altra su "iso-8859-1".

Ora, caricando le pagine in IE entrambe si vedono correttamente e visualizzano bene sia le entità html sia le lettere accentate pure.


Le mie perplessità nascono quando provo a fare "Visualizza->Codifica->" e scelgo UTF-8 (per la pagina salvata in iso-8859-1) oppure iso-8859-1 (per quella salvata in UTF-8).

Facendo così infatti le lettere accentate pure vengono visualizzate male!

Non capisco: il contenuto è lo stesso. Specificando nel codice il charset si vede bene in ogni caso.
Mentre se lo seleziono manualmente dal browser mi mostra caratteri strani.
Ma l'opzione 'Codifica' del browser non dovrebbe ignorare la dichiarazione della pagina e mostrarla con la codifica selezionata?

Perchè invece va in conflitto mostrando caratteri diversi, quando se specificata nel codice la stessa codifica funziona?


I miei problemi credo dipendando anche dalla codifica del database, ma intanto mi piacerebbe chiarire queste cose di base.