2012-10-23 18 views
6

Sto cercando di capire perché caratteri come questo: & # xFF959; apparire come scatole vuote. Sono caratteri unicode e charset è utf-8.I caratteri speciali UTF-8 non vengono visualizzati

Può essere un problema di carattere che non ha un glifo per quello? Qualche idea?
dettagli: pagina HTML, io uso firefox 16.0.1, Windows 7 .. Pagina come su questo post io non vedere questo glifo sia
Grazie

+1

Bene, hai risposto alla tua domanda all'interno della domanda stessa.) – raina77ow

+0

Dipende completamente dal proprio ambiente. Si prega di fornire grandi quantità di dettagli aggiuntivi. – SLaks

+0

@ raina77ow ok, grazie. Conoscete alcuni caratteri che sono in grado di mostrare quel personaggio sul sito web. È solo html da correggere - voglio dire aggiungere font-family: SOME_UNICODE_FONT e sarà fatto. Dipende dai caratteri del browser Web o dai caratteri di sistema? –

risposta

6

Il personaggio che hai lì è il Unicode Character 'WHITE RIGHT POINTING BACKHAND INDEX' (U+1F449). In quella pagina, è possibile trovare un elenco di caratteri noti che supportano il carattere dietro il collegamento Fonts that support U+1F449.

Font
LastResort
Segoe UI Emoji
Segoe UI Symbol
Symbola

Nessuno di questi tipi di carattere è stato usato qui in stackoverflow.com, così vedrete anche una scatola vuota.

Se questo si verifica sul proprio sito Web e si desidera ripararlo, è necessario fornire un font di supporto insieme alla webapp da CSS @font-face, o in questo caso particolare forse meglio, cercare un Libreria di icone basata su CSS come Font Awesome. Lo <i class="fa fa-hand-o-right"> si avvicina molto a questo personaggio.

+0

Grazie mille. Questo spiega tutto. Quindi, quando voglio usare il carattere 'strano', dovrei sempre pensare a quali caratteri sono installati sul browser Web dell'utente finale? –

+1

Prego. È corretto. Puoi comunque fornire anche il tuo font insieme alla webapp da CSS '@ font-face'. – BalusC

+0

Rilevante anche oltre i caratteri che una pagina Web è progettata per utilizzare è il comportamento di fallback del font del browser e del sistema operativo. – bames53

1

mancanti caratteri dei font di solito essere sostituiti con altri tipi di carattere, e UTF-8 dovrebbe essere in grado di visualizzare tutti i caratteri Unicode. Sospetto che la codifica del tuo file (come viene salvata dal tuo editor), non corrisponde alla dichiarazione nei metatag della tua pagina HTML.

È possibile controllare la pagina con questo W3-checker, può eventualmente darti suggerimenti sul problema della tua pagina.

EDIT:

Hai ragione, non è un problema di codifica, il numero del personaggio ha un numero così elevato, che i caratteri "normali" non lo supportano. Forse puoi usare uno di questi ☛ ☞, altrimenti dovresti usare un font web e i font con supporto unicode completo possono essere abbastanza grandi.

+0

martin, puoi vedere questo glifo nel mio post? o vedi questo quadrato con i codici? La mia pagina contiene la dichiarazione di charset utf-8. –

+0

@pawlakppp - Vedo il quadrato, che tipo di simbolo dovrebbe essere? – martinstoeckli

+0

dovrebbe essere la mano che punta a destra. Quindi vedi SO è decisamente utf-8 compatibile e non vediamo questo simbolo –

4

Il carattere U + 1F449 è stato aggiunto a Unicode nella versione 6 nel 2010 e in genere richiede circa dieci anni dall'adozione di un carattere in Unicode prima che sia ampiamente supportato nei caratteri.

I pochi caratteri che lo contengono ora includono Symbola e Segoe UI Symbol. Se hai installato uno di questi, probabilmente lo vedrai; altrimenti no. Segoe UI Symbol viene fornito con Windows 8 e apparentemente con (almeno alcune varianti di) Windows 7, sebbene la versione di Windows 7 possa essere limitata: uno update è disponibile da Microsoft. Symbola è un font gratuito, quindi in teoria è possibile utilizzarlo come font scaricabile (tramite @font-face), ma le dimensioni del file sono piuttosto grandi.

Si suppone che i browser Web utilizzino i caratteri di fallback, se i caratteri specificati per un elemento non contengono un glifo per alcuni caratteri nel contenuto.In genere, Firefox implementa questo testamento, IE no, soprattutto nelle versioni precedenti, quindi se si utilizza il carattere in una pagina Web, è meglio racchiudere un elemento a sé stante (di solito lo span viene utilizzato per lo scopo) e impostare quanto segue su di essa nel CSS:

font-family: Segoe UI Symbol, Symbola; 

Ma questa volontà in quanto tale (senza @font-face) funzionano solo per le persone che usano il computer che contengono uno dei font.

+0

Grazie per la spiegazione, l'ho provato con font-face, quindi l'ho installato e usato senza font-face, e tutto ha funzionato come hai detto tu;) –

Problemi correlati