Guide
30 agosto 2026

Perché le icone spariscono quando importi una pagina web in Figma

Arriva tutto tranne le icone. Scatole vuote, quadrati neri, o rettangolini dove c'erano le frecce. Le cause sono quattro, e quale ti è capitata decide se è riparabile.

Porti una pagina in Figma e arriva tutto tranne le icone. Dove c'erano le frecce, la lente e i piccoli segni di link esterno ci sono quadrati vuoti, macchie nere, o niente.

Non è un bug solo. Sul web le icone si disegnano in quattro modi completamente diversi, e ognuno si rompe a modo suo. Sapere quale hai davanti ti dice se è riparabile e come.

I quattro modi in cui i siti disegnano le icone, ciascuno accanto al suo tipico fallimento di importazione: l'SVG inline sopravvive, gli sprite arrivano come riquadri vuoti, i font di icone come quadrati senza glifo, le maschere CSS come quadrati a tinta unita.
La stessa pagina, quattro tecniche di icone. A sinistra di ogni coppia ciò che mostra il browser; a destra ciò che produce un convertitore che manca quella tecnica.

I quattro tipi e il modo in cui ciascuno fallisce

1. SVG inline

Il caso facile. L'icona è scritta direttamente nell'HTML come elemento <svg> con i suoi path dentro. Qualsiasi convertitore che legga il DOM vede la geometria e può consegnare un vettore a Figma.

Quando fallisce di solito è perché il convertitore ha appiattito qualcosa: un riferimento <use> a un simbolo definito altrove, un filter CSS, o un riempimento currentColor che resta senza colore una volta uscito dalla sua cascata.

2. Sprite SVG

Un file contiene tutte le icone come <symbol>, e in ogni punto in cui compare un'icona c'è solo un riferimento.

<svg class="icon"><use href="/icons.svg#chevron-down" /></svg>

Efficiente sul web, invisibile a un convertitore ingenuo. L'elemento nel DOM non contiene path. Letto alla lettera dà un <svg> vuoto, ed è per questo che gli sprite arrivano così spesso come scatole bianche della misura giusta.

Risolverli significa seguire il riferimento, scaricare il file degli sprite, trovare il simbolo tramite id e inserire la geometria. E se lo sprite sta su un'altra origine, quella richiesta deve prima essere permessa.

3. Font di icone

L'icona è un carattere in un font. Font Awesome, Material Icons e qualsiasi font di icone interno funzionano così: un elemento con una classe, uno pseudo-elemento ::before e una proprietà content con un codepoint dell'area a uso privato di Unicode.

.fa-search::before { content: "\f002"; }

Vanno storte due cose. Primo, l'icona vive in uno pseudo-elemento, che non sta nel DOM: puoi percorrere l'albero quanto vuoi, non c'è. Secondo, se un convertitore riesce comunque a catturarla come testo, arriva in Figma come il carattere letterale, e senza il font di icone installato Figma disegna quello che ha di ripiego: una casella vuota, o un glifo qualsiasi.

Da qui viene il sintomo classico della pagina importata piena di rettangolini al posto delle icone.

4. Icone con maschera CSS

Merita un paragrafo a sé perché sta diventando comune e fallisce in un modo che sembra riuscita. L'elemento non ha alcun contenuto: ha un colore di sfondo e una maschera.

.icon {
  background-color: currentColor;
  -webkit-mask-image: url(/icons/search.svg);
  mask-size: contain;
}

La forma sta nell'immagine di maschera, il colore sta sull'elemento. Un convertitore che legge lo sfondo ottiene un rettangolo pieno del colore dell'icona. Ecco perché queste arrivano come quadrati neri o colorati invece che come niente: il colore è giusto e la forma è sparita.

I siti di documentazione basati su VitePress usano molto questo schema. È così che ci siamo imbattuti nel problema: qualcuno ci ha segnalato che su un sito di doc ogni icona era stata importata come un quadrato nero.

Perché i convertitori le perdono

Perché coprire tutti e quattro significa fare quattro cose diverse, e tre di queste richiedono più che leggere il DOM.

Un convertitore che si limita a percorrere il DOM e copiare ciò che trova risolve il primo caso e fallisce in silenzio sugli altri. È il comportamento comune, non l'eccezione.

Come capire in che caso sei

Apri la pagina, tasto destro sull'icona, ispeziona. Trenta secondi bastano.

Cosa vedi nell'ispettoreTipoCome fallisce di solito
<svg> con dentro <path>SVG inlineDi solito a posto
<svg> con <use href="…#id">SpriteScatola vuota
<i> o <span> con classe icona e senza figliFont di iconeRettangolo del glifo mancante
Elemento con mask-image negli stili calcolatiMaschera CSSQuadrato di colore pieno

Cosa fa Snapture con ciascuno

Tutti e quattro sono gestiti, e conviene essere precisi, perché «supportiamo le icone» lo dice qualsiasi strumento.

Nella misurazione pubblicata sulla pagina delle misure, la home di Linear ha prodotto 215 nodi vettoriali e quella di Stripe 153. Quasi tutto quel lavoro è sulle icone, ed è lì che si decide la differenza tra un file modificabile e un file bucato.

La prova rapida per qualsiasi convertitore. Trova una pagina che usi font di icone o maschere CSS — la maggior parte dei siti di documentazione su VitePress o Docusaurus va bene — e importala. Se le icone tornano come rettangoli o quadrati colorati, lo strumento legge il DOM e si ferma lì.

Se in un file le icone sono già rotte

Per un quadrato nero rasterizzato non c'è riparazione; l'informazione sulla forma non è mai entrata nel file. Reimporta con uno strumento che risolva il tuo caso.

L'unica eccezione sono i font di icone. Se sono entrate come caratteri di testo e hai il font in locale, Figma le disegnerà correttamente sul tuo computer, ma si romperanno per chiunque apra il file senza quel font. Conviene comunque reimportare, invece di consegnare un file che funziona solo da te.

Provalo sulle tue pagine Cinque catture gratuite con tutto incluso. Senza carta né account.

English · 한국어 · 日本語 · 简体中文 · 繁體中文 · Español · Português · Français · Deutsch · Русский · Italiano · Bahasa Indonesia

Da leggere anche

Perché l'Auto Layout di Figma si sposta dopo aver importato una pagina web
Home Guide Cosa produce Assistenza