2011-10-10 21 views
18

Per molto tempo ho usatofont-size: 62,5% vs font-size: 10px

body {font-size:62.5%;} 

nei documenti CSS in quanto si suppone di fare 1em uguale 10px. Tuttavia, di recente ho notato che questo non è il mio caso in Internet Explorer. Così invece ho provato il codice:

html {font-size:100%} 
body {font-size:10px} 

Ora questo funziona per me come un fascino. La mia domanda è:

Qual è lo svantaggio di questa soluzione dal momento che non riesco a trovare nessun altro utilizzarlo?

Per chiarire: in seguito specificherò tutti i miei formati di carattere, larghezze, altezze e così via in em. È solo nel corpo che uso 10px anziché 62.5%.

+0

Forse questa discussione può dare più intuizione del problema: [perché-em-posto-di-px] [1] [1]: http://stackoverflow.com/questions/609517/why-em-instead-of-px –

+1

Mi piace il font pixel taglie troppo ... Mi sento come se avessi un migliore controllo del design. Lo svantaggio era che non si adattava bene quando le persone aumentavano manualmente le dimensioni del testo ... le cose si rompevano o si rovesciavano. Usare '%' o 'em' compenserebbe meglio questi problemi di spaziatura. Tuttavia, oggigiorno, i browser più recenti si stanno muovendo maggiormente verso un vero "zoom" in/out che rende problematico il vecchio aumento/diminuzione delle dimensioni del testo. – Sparky

+0

Beh, voglio davvero andare con lui per motivi di accessibilità. Grazie per il link, ma ancora non capisco la differenza. In entrambi i casi 1em sarà 10px in Firefox, ma per me 1em sarà leggermente più grande in Internet Explorer. – RichardL

risposta

9

Hai intenzione di ottenere argomenti per entrambi i lati di questo problema. Immagino che la maggioranza discuterà per%. Ma hai chiesto degli svantaggi o delle insidie ​​

Lo svantaggio principale che si verificherebbe sarebbe se si attraversasse un browser o un dispositivo che rispettasse le impostazioni dei pixel anziché una percentuale del valore predefinito, e che l'impostazione dei pixel fosse problematica o troppo piccolo per leggere. Se questo browser non offre all'utente la possibilità di ridimensionare il carattere o di ingrandire la pagina, si potrebbe avere un potenziale problema.

Detto questo, quasi ogni browser in questi giorni ha quell'impostazione predefinita di 16px. Non posso parlare del motivo per cui IE nel tuo caso lo sta dimensionando diversamente. Se stai per un disegno perfettamente dimensionato con pixel, quindi usa px, altrimenti ti suggerirei di rimanere con%.

+0

Grazie per questa risposta. Era quello che stavo cercando, anche se presenta ancora un problema per me. Forse testerò il sito su un'altra CPU con IE per vedere se ho ancora lo stesso problema. Se è così, qualcos'altro nel mio codice deve causare questo. – RichardL

+0

se è la risposta che stavi cercando segnalo come risposta corretta, quindi ottiene i suoi punti =) –

0

si potrebbe utilizzare:

html {font-size:10px} 

Quindi sa che si può lavorare solo con i REM o em senza calcoli complessi: 1 rem = 10px 2 rem = 20px

Problemi correlati