FAQ |
Lista utenti |
Gruppi sociali |
Calendario |
Cerca |
Messaggi odierni |
|
|
LinkBack | Strumenti della discussione | Modalità di visualizzazione |
|
|||
Come uniformare spaziatura caratteri tra i diversi browser?
Come uniformare spaziatura caratteri tra i diversi browser?
Ciao a tutti,
sto provando ad aggiustare la spaziatura tra i caratteri di un sito lavorando sul tag letter-spacing del css. Noto però che non riesco a far combaciare la spaziatura visiva di questo testo fra i due browser Firefox ed Explorer 8; nel mio caso mettendo dei margini negativi ma credo che valga anche per i positivi. Qualcuno conosce quindi un sistema per rendere uguale questo testo “ristretto” in tutti i principali browser? Grazie |
|
|||
Ciao!
La gestione della spaziatura tra i caratteri (letter-spacing) può variare tra diversi browser, specialmente tra versioni più vecchie come Internet Explorer 8 e browser più moderni come Firefox. Qui ci sono alcuni suggerimenti per uniformare la spaziatura dei caratteri tra i diversi browser: 1. Usa un Reset CSS Un reset CSS può aiutare a standardizzare gli stili di base tra i diversi browser. Ad esempio, il reset di Eric Meyer è molto popolare: codice:
/* http://meyerweb.com/eric/tools/css/reset/ v2.0 | 20110126 License: none (public domain) */ html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline; } /* HTML5 display-role reset for older browsers */ article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; } body { line-height: 1; } ol, ul { list-style: none; } blockquote, q { quotes: none; } blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; } table { border-collapse: collapse; border-spacing: 0; } Assicurati di definire letter-spacing in modo specifico e non fare affidamento sui valori di default dei browser: codice:
p { letter-spacing: 1px; /* O qualsiasi valore necessario */ } A volte usare le unità relative come em può dare risultati più consistenti rispetto a unità assolute come px. Ad esempio: codice:
p { letter-spacing: 0.1em; } Assicurati che i margini e il padding siano uguali in tutti i browser. Puoi utilizzare un CSS reset per aiutarti con questo. 5. Utilizza un font Web I font Web (come quelli forniti da Google Fonts) possono comportarsi in modo più uniforme tra i browser rispetto ai font di sistema. Ad esempio: codice:
<link href="https://fonts.googleapis.com/css?family=Open+Sans" rel="stylesheet"> <style> body { font-family: 'Open Sans', sans-serif; letter-spacing: 1px; /* O qualsiasi valore necessario */ } </style> Internet Explorer 8 non supporta alcune funzionalità moderne del CSS. Puoi includere CSS specifici per IE8 utilizzando commenti condizionali: codice:
<!--[if lt IE 9]> <style> p { letter-spacing: 1px; /* O qualsiasi valore necessario */ } </style> <![endif]--> Alcuni font possono avere un rendering diverso tra i browser. Prova a testare con diversi font per vedere se ci sono differenze significative. 8. JavaScript Fallback Se non riesci a ottenere la coerenza solo con il CSS, puoi usare JavaScript per applicare stili specifici in base al browser: codice:
if (navigator.userAgent.indexOf('MSIE 8') !== -1) { document.body.classList.add('ie8'); } codice:
.ie8 p { letter-spacing: 1px; /* O qualsiasi valore necessario */ } |
|
|