Fai attenzione che pure la codifica del file deve essere in utf-8 .
Io ci lotto spesso con le codifiche di caratterei jappo cinorussi etc.
I caratteri speciali italiani (se pur presenti nella codifica utf-8) sono traquillamente convertibili in codifica html (iso-quello che e') con la funzione htmlentities(). attento che questa ti converte pure "<" e ">" .
I caratteri utf-8 sono semore na rottura quando la config del server scassa. Anche perche' dipendono appunto da che codifiche acceta il server che stai usando.
A me capitava che file salvati con codifica utf-8 funzionassero anche senza il charset nell'html SOLO SU FIREFOX. Una volta specificato il charset anche nell'html i files funzionavano anche su ie.
Controlla l'encoding del file.