Select Page
Aggiungere un’icona prima di un link testuale

Aggiungere un’icona prima di un link testuale

Come faccio ad aggiungere una piccola icona in modo da evidenziare tutti i link presenti in una pagina web? Ottenere questo risultato è molto semplice, servono poche righe di codice e lo strumento da utilizzare sono i selettori CSS. I selettori CSS si possono dividere in une grandi categorie. Una si occupa direttamente degli elementi definiti nel documento, come ad esempio P o HREF, generalmente definiti come i selettori DOM (Document Object Model), mentre l’altra lavora sugli pseudo-elementi come ad esempio la prima lettera di un paragrafo. In questo caso specifico utilizzeremo selettori della prima categoria. Tornando alla nostra domanda iniziale, se ad esempio vogliamo aggiungere automaticamente una icona sulla sinistra di ogni parola che contiene un link si deve utilizzare il selettore “^” che sta ad indicare che una certa stringa “inizia” con un certo valore.

a[href^="http"]{
    background: url("img_01.jpg") no-repeat left center;
    display: inline-block;
    padding-left: 25px;
}


Questo selettore CSS individua il valore specificato all’inizio dell’attributo ed esegue le istruzioni.
Quindi tutti i link href delle mie pagine che iniziano con http verrano rappresentati da una piccola immagine sulla sinistra. La stringa HTML qui di seguito contiene un link href.

<p>Lorem <a href="http://www.google.it">ipsum dolor</a> sit amet, consectetur adipisci elit.</p>

Il risultato sulla pagina sarà questo qui sotto. L’immagine img_01.jpg richiamata nel CSS viene aggiunta al link testuale href perchè esegue l’istruzione presente all’interno di a[href^=”http”] {…}.

 

Fonts

 

Alcuni dei selettori più utilizzati

  • ^ = Valore attributo all’inizio della sottostringa
    a[href^=”mailto”]
  • $ = Valore attributo alla fine della sottostringa
    a[href$=”PDF”]
  • *= Valore attributo in un punto qualsiasi della sottostringa
    a[title*=”image”]

Redirect manuale da HTTP a HTTPS modificando il file .htaccess

Soluzione manuale per abilitare un certificato SSL (Secure Sockets Layer). Codice condiviso da Tim Stone sulle pagine di Stackoverflow, un codice...

Autenticazione a due fattori per proteggere meglio gli account Firefox

  Dal 23 marzo 2018 l'autenticazione a due fattori, meglio conoscita come "2FA" (acronimo di two-factor authentication), è disponibile per gli...

Outlook e i font alternativi

Sul forum di Litmus c'è una soluzione tanto semplice quanto efficace per permettere la visualizzazione corretta dei font alternativi anche su...

La normativa anti-spam CAN SPAM Act

  Anche se non è così tangibile l'invio di comunicazioni promozionali verso i propri clienti tramite email ha le proprie regole....

HTML {font-size: 62.5%}

Perchè utilizzare come dimensione di default di un font una percentuale invece di indicare espressamente la dimensione in pixel? Su...

Capilettera per le pagine web

Capilettera per le pagine web

Con gli stili CSS si può facilmente aggiungere un po’ di creatività e simulare i classici capilettera dei libri stampati. I capilettera sono la prima lettera iniziale di un paragrafo o capitolo che viene scritta in modo più grande rispetto alle altre lettere che seguono. Grazie agli pesudo-elementi del CSS, che in poche parole si possono definire “elementi fittizi che sono presenti nel CSS ma non nel codice della pagina”, si può facilmente ottenere l’effetto capolettera.

Il selettore pricipale per ottenere questo effetto è :first-letter. Con questo selettore è possibile indicare uno stile specifico solo per la prima lettera al quale aggiungere poi molte caratteristiche accessorie come la dimensione, il tipo di font, il colore, il padding e così via.

p:first-child:first-letter{
font-size: 32px;
font-weight: 900;
color: SlateGray;
}

In questo esempio viene specificato che solo la prima lettera del primo paragrafo :first-child :first-letter avrà una dimensione di 32px, sarà rappresentata in bold e in colore grigio.

Lorem ipsum dolor sit amet, consectetur adipisci elit, sed eiusmod tempor incidunt ut labore et dolore magna aliqua.

 

Non c’è molto altro da aggiungere, questo comando è molto lineare nel suo utilizzo. Si possono aggiungere altre linee di codice per impostare la linea di base del capolettera di una o più righe sotto la linea di base della prima riga del paragrafo, aggiungere margini, rientri a destra o sinistra fino a colori di sfondo a contrasto. A questo punto serve solo un po’ di fantasia.

La normativa anti-spam CAN SPAM Act

  Anche se non è così tangibile l'invio di comunicazioni promozionali verso i propri clienti tramite email ha le proprie regole....

Animazione CSS dei link sottolineati

Il classico link sottolineato diventa animato grazie a qualche riga di codice CSS. Iniziamo togliendo a tutti i link la sottolineatura classica con...

Email marketing per il 2017

  Quali nuovi strumenti si hanno a disposizione per coinvolgere i propri clienti tramite campagne mail? Quali sono le strategie da prendere in...

Le unità di misura per il testo

  Le unità di misura più utilizzate per definire la dimensione di un font all'interno di uno stile CSS sono cinque: px (pixel) pt (punti) em...

Capilettera per le pagine web

Con gli stili CSS si può facilmente aggiungere un po' di creatività e simulare i classici capilettera dei libri stampati. I capilettera...

HTML {font-size: 62.5%}

HTML {font-size: 62.5%}

Perchè utilizzare come dimensione di default di un font una percentuale invece di indicare espressamente la dimensione in pixel? Su Quora c’è la risposta a questa domanda che mi trova pienamente d’accordo. Cercare di essere meno dipendenti dai “pixel” per cercare di essere il più “universali” possibile. Un esempio banale. Quanto sono alti 10px su un monitor VGA e quanto lo sono su un monitor 4k? Probabilmente sul monitor a 4K si faticherebbe a leggere qualsiasi cosa ci sia scritto a 10px. La densità dei pixel è sempre più concentrata, non è più il caso di restare legati ad una dimensione in pixel che poteva andare bene solo dieci anni fa.

Uno smartphone di 5,5 pollici (13.97cm) con una risoluzione di 2160×3840 pixel (4K-UHD) avrà una stabiliante densità di 806ppi. Un quasi obsoleto monitor da 21.5 pollici (54.61cm) con una risoluzione di 1920×1080 pixel avrà una densità di 102.46ppi.

Il tutto si basa sulla dimensione di default dei browser che al momento è praticamente per tutti di 16px, il 62.5% di 16 pixel sono 10 pixel. La scelta di impostare la misura base dei font di una pagina a 10px è una prassi in uso da molti anni e come minimo ha risolto un paio di problemi in un colpo solo. Semplificare la comprensione del codice e potersi adattare su schermi di varie dimensioni.

Quindi, facendo un piccolo calcolo:

100/62.5 = 1.6

trasforma la dimensione base di 1em uguale a 10px

1em = 10px

fino ad avere una dimensione del 100% associata ai 16px (12pt) standard

1.2em = 12px (75%)
1.4em = 14px (87.5%) 
1.6em = 16px (100%)

E’ un metodo per semplificare il lavoro e fissare 1em a 10 pixel invece dei 16 pixel standard e dover poi ricalcolare le dimensioni nei vari utilizzi. I 10 pixel in punti sarebbero 7.5, gli em 0.625 e la percentuale 62.5%.

Un pixel, termine creato da IBM per definire un “elemento immagine”, è la più piccola unità di informazioni indivisibile di un’immagine digitale. I pixel possono essere visualizzati o stampati, ma non è possibile dividere un singolo pixel in parti più piccole. Un pixel è sempre la più piccola dimensione di informazioni di cui è composto un file immagine.

Impostare una dimensione di base con una percentuale diminuisce le preoccupazioni sui futuri aggiornamenti dei browser e aumenta la compatibilità sui diversi device.

Maggiori specifiche sui “punti per pollice” si trovano sulla pagina Pixel Density di Wikipedia.

Le unità di misura per il testo

  Le unità di misura più utilizzate per definire la dimensione di un font all'interno di uno stile CSS sono cinque: px (pixel) pt (punti) em...

Email marketing per il 2017

  Quali nuovi strumenti si hanno a disposizione per coinvolgere i propri clienti tramite campagne mail? Quali sono le strategie da prendere in...

La normativa anti-spam CAN SPAM Act

  Anche se non è così tangibile l'invio di comunicazioni promozionali verso i propri clienti tramite email ha le proprie regole....

Outlook e i font alternativi

Sul forum di Litmus c'è una soluzione tanto semplice quanto efficace per permettere la visualizzazione corretta dei font alternativi anche su...

Autenticazione a due fattori per proteggere meglio gli account Firefox

  Dal 23 marzo 2018 l'autenticazione a due fattori, meglio conoscita come "2FA" (acronimo di two-factor authentication), è disponibile per gli...

Outlook e i font alternativi

Outlook e i font alternativi

Sul forum di Litmus c’è una soluzione tanto semplice quanto efficace per permettere la visualizzazione corretta dei font alternativi anche su Outlook. Diamo per scontato che i client di posta hanno limitazioni rispetto ai browser nell’interpretare HTML e CSS e che è sempre meglio inserire gli stili inline piuttosto che nel foglio di stile all’interno del tag head.Quindi, se ad esempio decido di utilizzare il font Raleway importandolo dall’esterno, utilizzando il servizio di Google, nello style CSS all’interno del tag head vado ad inserire…

@import url(https://fonts.googleapis.com/css?family=Raleway:400,700

…benissimo, il 99% dei browser non darà problemi. Dentro al mio codice HTML inline span quindi vado a richiamare questo font e inserisco…

<span style="font-family: 'Raleway', Arial, Times, sans-serif;">testo</span>

Il risultato sarà che la parola testo all’interno dello span sarà visualizzata utilizzando il font Raleway. Peccato che se questo codice HTML viene utilizzato per spedire una mail e questa mail viene letta utilizzando Outlook il font Raleway non viene riconosciuto. Ma Outlook nemmeno utilizza il font alternativo Arial come ci si aspetterebbe (il secondo della lista)… ma nemmeno quello successivo. Praticamente Outlook ignora tutto il comando.La soluzione però è molto semplice, si può aggiungere questo codice all’interno dello style CSS…

<style>
[style*="Raleway"] {
font-family: 'Raleway', Arial, Times, sans-serif !important
}
...
</style>

…e inserire questo style all’interno dello span

<span style="font-family: Arial, Times, sans-serif, 'Raleway'">testo</span>

In questo modo Outlook ignora l’indicazione contenuta nello style CSS e interpreta il comando mettendo come primo font l’Arial, il primo della lista indicato nello stile inline. Nei client che supportano l’utilizzo dei font importati, indicati nel foglio di stile, invece il primo font risulta Raleway perchè nello style CSS viene chiesto di posizionarlo come prima scelta.

La normativa anti-spam CAN SPAM Act

  Anche se non è così tangibile l'invio di comunicazioni promozionali verso i propri clienti tramite email ha le proprie regole....

Le unità di misura per il testo

  Le unità di misura più utilizzate per definire la dimensione di un font all'interno di uno stile CSS sono cinque: px (pixel) pt (punti) em...

Redirect manuale da HTTP a HTTPS modificando il file .htaccess

Soluzione manuale per abilitare un certificato SSL (Secure Sockets Layer). Codice condiviso da Tim Stone sulle pagine di Stackoverflow, un codice...

Outlook e i font alternativi

Sul forum di Litmus c'è una soluzione tanto semplice quanto efficace per permettere la visualizzazione corretta dei font alternativi anche su...

HTML {font-size: 62.5%}

Perchè utilizzare come dimensione di default di un font una percentuale invece di indicare espressamente la dimensione in pixel? Su...

Le unità di misura per il testo

Le unità di misura per il testo

Le unità di misura più utilizzate per definire la dimensione di un font all’interno di uno stile CSS sono cinque:

  • px (pixel)
  • pt (punti)
  • em (“M”)
  • rem (root em)
  • % (percentuale)

Si possono distinguere queste diverse unità di misura in due gruppi, dimensioni fisse (px e pt) e dimensioni relative (em, rem e %). E’ una differenza molto importante da tenere presente ad inizio progetto. Se si andrà a creare un layout responsive probabilmente è meglio usare le unità variabili che si adattano alle dimesioni dello schermo, al contrario se si preferisce che la dimensione resti invariata nonostante le dimensioni è meglio usare le unità fisse.

I paramentri standard hanno queste dimensioni:

1em = 1rem = 16px = 12pt = 100%

Facciamo un esempio, partendo da una definizione di “font-size: 62.5%” definita nel tag HTML e un “font-size: 1.7rem” nel tag body di questa pagina, il render del testo nelle diverse unità di misura è questo:

  • Lorem ipsum dolor sit amet 16px
  • Lorem ipsum dolor sit amet 12pt
  • Lorem ipsum dolor sit amet 1em
  • Lorem ipsum dolor sit amet 1rem
  • Lorem ipsum dolor sit amet 100%

Si possono notare sia piccole differenze che grosse differenze.

 

PX

L’unità in pixel è quella forse più naturale per essere gestita dai monitor visto che misura esattamente ciascuno degli elementi puntiformi che compongono l’oggetto. Un pixel è pari a un punto sullo schermo del computer, la più piccola unità della risoluzione dello schermo. E’ molto precisa e abbastanza uniforme anche se visualizzata su dispositivi diversi.

E’ un’unità di misura fissa, si adatta alla perfezione sulle dimesnioni di schermi per il quale è stata pensata, un po’ meno su schermi di dimensioni diverse. Impostare la dimensione del carattere in valori di pixel diventa necessaria quando si ha bisogno di molta precisione senza necessità che sia scalabile.

E’ il modo migliore, indipendentemente dal sistema operativo o dal browser, di fare il render dei caratteri esattamente del numero di pixel specificati. I risultati possono solo variare minimamente in quanto i browser possono utilizzare algoritmi diversi per il render.

PT

L’unità di misura in punti nasce per essere utilizzata sulla stampa tradizionale anche se è stata presto convertita sui monitor. Un punto è uguale a 1/72 di pollice. I punti sono molto simili ai pixel in quanto sono le unità di dimensione fissa e non sono in grado di scalare in termini di dimensioni. Questa è una unità di misura utilizzata nei processi di stampa classici e nei software come Microsoft Word. Scelta ideale per la creazione di file destinati alla stampa dato che le stampanti misurano le dimensioni dei font in punti e non in pixel.

Fonts

Newsdesigns

EM

Il significato storico della definizione di em viene dalla la lettera “M” maiuscola che un tempo veniva utilizzata come parametro per i processi di stampa offset. Ai giorni nostri non ha più molto senso questo parametro analogico ma la definizione à rimasta. L’unità em è l’altezza del carattere in punti nominali o pollici, la dimensione di un dato carattere sono dipendenti dalle impostazioni definite dall’utente nell’elemento font-size.

1em equivale alla dimensione attuale dell’ultima definizione di font-size, 2em raddoppia e .5em dimezza. L’elemento em è un’unità di misura sempre relativa all’elemento contenitore. Questa unità di misura scalabile è forse una delle più utilizzate per le pagine HTML data l’elevata versatilità di utilizzo.

REM

I valori rem sono stati pensati allo scopo di risolvere il problema delle dimensioni relative negli elementi annidati utilizzando il valore espresso em. I valori rem, a differenza dei valori em, fanno sempre riferimento all’elemento radice del documento HTML e non l’elemento genitore.

In altre parole questa unità di misura permette di specificare una dimensione del carattere in modo assoluto senza essere influenzato dalla dimensione del genitore contenitore.

% {#}

L’unità percentuale è abbastanza evidente nel suo funzionamento. Se un parent ha il font-size di 24px e il child ha un font-size del 50%, le dimensioni trasformate in pixel diventeranno 12.

L’unità percentuale è molto simile all’unità “em”, fatta eccezione per alcune differenze. Innanzitutto il font-size attuale, se non specificato, è pari al 100% (cioò 12pt = 100%). Se si utilizza questa unità percentuale il testo è naturalmente scalabile, molto indicato per i dispositivi mobili e per l’accessibilità.


Altre unità di misura poco utilizzate

  • Exes (ex) – L’unità ex è un misura di tipo relativo che si riferisce alla dimensione in altezza della lettera “x” minuscola di un carattere. Scarsamente non è utilizzata a causa del supporto quasi inesistente formito dai i browser.
  • Picas (pc) – Come la dimensione in punti anche i picas sono unità di misura provengono dalla tipografia e sono nate per l’utilizzo nei caratteri di stampa. In questo caso il problema che si può riscontare sui documenti destinati allo schermo è che non si garantisce uniformità di dimensioni sulle varie piattafome.


In conclusione

  • L’unità in px è la dimensione più precisa per essere visualizzata sui monitor
  • L’unità em si riferisce alla dimensione relativa del contenitore genitore
  • L’unità rem si riferisce esclusivamente alla dimensione contenuta nel tag HTML
  • L’unità % è la più scalabile

Conversion Chart

PT PX EM / REM % Keyword
6pt 8px 0.5em 50%
7pt 9px 0.55em 55%
7.5pt 10px 0.625em 62.5% x-small
8pt 11px 0.7em 70%
9pt 12px 0.75em 75%
10pt 13px 0.8em 80% small
10.5pt 14px 0.875em 87.5%
11pt 15px 0.95em 95%
12pt 16px 1em 100% medium
13pt 17px 1.05em 105%
13.5pt 18px 1.125em 112.5% large
14pt 19px 1.2em 120%
14.5pt 20px 1.25em 125%
15pt 21px 1.3em 130%
16pt 22px 1.4em 140%
17pt 23px 1.45em 145%
18pt 24px 1.5em 150% x-large
20pt 26px 1.6em 160%
22pt 29px 1.8em 180%
24pt 32px 2em 200% xx-large
26pt 35px 2.2em 220%
27pt 36px 2.25em 225%
28pt 37px 2.3em 230%
29pt 38px 2.35em 235%
30pt 40px 2.45em 245%
32pt 42px 2.55em 255%
34pt 45px 2.75em 275%
36pt 48px 3em 300%

 

Capilettera per le pagine web

Con gli stili CSS si può facilmente aggiungere un po' di creatività e simulare i classici capilettera dei libri stampati. I capilettera...

HTML {font-size: 62.5%}

Perchè utilizzare come dimensione di default di un font una percentuale invece di indicare espressamente la dimensione in pixel? Su...

Aggiungere un’icona prima di un link testuale

Come faccio ad aggiungere una piccola icona in modo da evidenziare tutti i link presenti in una pagina web? Ottenere questo risultato è molto...

Animazione CSS dei link sottolineati

Il classico link sottolineato diventa animato grazie a qualche riga di codice CSS. Iniziamo togliendo a tutti i link la sottolineatura classica con...

Outlook e i font alternativi

Sul forum di Litmus c'è una soluzione tanto semplice quanto efficace per permettere la visualizzazione corretta dei font alternativi anche su...