Newsgroup: it.comp.lang.javascript
Titolo: javascript - css e controllo dimensioni font

Avete presente i fogli di stile che stabiliscono il tipo di font con la
sequenza di tre famiglie?
ad esempio:
FOGLIO DI STILE:
td {
 font-family: " Monotype Corsiva, Arial";
 font-size: 16px;
}
Si può fare uno script che provveda a cambiare la dimensione del carattere a
seconda del tipo di font che il browser visualizza(e quindi supporta)?
FACCIO UN ESEMPIO:
il monotype corsiva impostato su 16 pixels è più piccolo rispetto all'Arial
della stessa grandezza.
Io sviluppo un sito dando preferenza a "monotype corsiva" perchè è più
elegante( anche se si legge peggio, lo so) ed incasello per benino il testo
dentro delle celle di tabella.
Nel caso un utente non abbia monotype corsiva installato passerà al secondo
carattere che ho definito nei fogli stile(esempio sopra), e facciamo che
questo font sia proprio l'Arial: in questo caso il testo occupa più spazio,
sebbene sia della stesa dimensione, e quindi mi forza la struttura della
tabella dandomi risultati inattesi, per non dire disastrosi
Ecco, per evitare tutto questo, si può fare uno scriptino che diminuisca la
dimensione del font se questo è un Arial?
ciao
Lenmarc

 dimensione del font se questo è un Arial?
Prova ad usare grandezze relative in % o meglio in "em"
Farai comunque un grosso favore a chi ha IE e non riesce a leggere 
caratteri troppo piccoli.
Se definisci in px non potranno ridimensionare il carattere, altrimenti 
si, ed a te in fondo interessa che la pagina venga letta vero? :-)
-- 
Ciao, Riccardo
------------------------------------------------------------------------
http://www.jsdir.com
  ---- Bring Your Site To Life!!!!
http://www.wmtools.it
 ---- WebMasterTools - Servizi per il tuo sito
http://www.dev2dev.it
 ---- La rete ha connesso nuove particelle - D2D006
------------------------------------------------------------------------
Per rispondere: togli i PUNTO .

 dà lui, e non avrebbe tutti i torti  =:-D
Mi son perso qualche cosa?
Non ho lurkato molto ultimamente :-(


 (Oscar Wilde)

 si, ed a te in fondo interessa che la pagina venga letta vero? :-)
Non voglio che siano loro a ridimensionare il font, vorrei che lo facesse
javascript in base al carattere che il browser seleziona.
E poi come sarebbe il discorso del %? In che modo l'utente andrebbe a
modificare la grandezza del carattere se lo imposto in percentuale?

modificare la grandezza del carattere se lo imposto in percentuale?
Mozilla:
Menu / View / Text Zoom
Firefox:
Menu / View / Increase (Decrease) Text Size
Opera:
Menu / View / Zoom
IE:
Menu / Visualizza / Carattere
'bye

 modificare la grandezza del carattere se lo imposto in percentuale?
Con IE dal menu "Visualizza", con Net/Moz [CTRL][+]/[CTRL][-], con altri 
browser non so, ma trattandosi in fondo di un'interfaccia sel SO verso 
l'utente ci sara' sicuramente una maniera.
E' una piccolezza di accessibilita' (ci vuole ben altro per fare un sito 
accessibile), ma e' anche l'errore (gravissimo) principale di tanti 
siti.


 Prova ad usare grandezze relative in % o meglio in "em"
La misura em/ex e' una strada lastricata di buone intenzioni che ti porta
dritto dritto all'inferno dell'accessibilita' multipiattaforma.
Dico "lastricata di buone intenzioni" perche' doveva essere la soluzione
corretta al problema della dimensione dei caratteri. Peccato che sia stata
mal implementata.
Dopo aver provato tutte le strade, ormai sono tornato "parzialmente" alle
origini. Su schermo, l'unica dimensione che ha senso di esistere, e' il
pixel. L'unico difetto, su IE non si puo' ridimensionare ( Ma si puo'
sempre fare una versione di CSS "ad alta leggibilita' ",tra le altre cose,
che ti reimposta non solo la dimensione del carattere, ma anche il layout
di conseguenza).
Citando: "Se lo fate in nome dell'accessibilita', vi state prendendo in
giro. (..) Se la morale e' che non potete accontentare tutti, la morale
ulteriore e' che ci riuscirete ancora meno usando l'unita' di misura em".
Alternativamente, di gran lunga superiore ai valori em e percentuali per i
font, ci sono le parole chiave, anch'essi mal implementati, ma piu'
affidabili dei valori em/ex e percentuali. Insomma, il male minore se
vogliamo metterla cosi'; o il farmaco con meno effetti collaterali.
-- 
C'ya,
  ZER0 :: coder.gfxer.webDesigner();
"Lo dice il buon senso, ma il buon senso non e' uno standard".
(Jeffrey Zeldman)

 vogliamo metterla cosi'; o il farmaco con meno effetti collaterali.
Se ti riferisci ai vari "normal, small, smaller" etc. prove che ho fatto 
tempo fa (quindi forse ormai non attendibili) evienziarono diversita' di 
resa nella dimensione fra IE5 e Mozilla (1.????).
Al momento l'unico problema che ho rilevato con gli "em" riguarda le 
tabelle di IE (le rare volte ormai che le uso) delle quali il TD non 
eredita la dimensione dal contenitore e devo workaroundare per rendere 
IE compatibile con Moz! :-P


 IE compatibile con Moz! :-P
Magari si fermassero solo qui i problemi.
Alcune versione di NS4 ignorano le unita di misura em e ex aplicate al
testo; IE3 considera l'em come px, quindi un testo di 3em ti viene fuori di
tre pixel. Generalmente, sui browser vecchi, in elementi nidificati si
hanno una fraccata e mezzo di guai che si evitano con le parole chiave.
Senza contare che tutto il meccanismo si basa su una dimensione standard di
16px/96ppi.. nei browser che non prendono questa misura come predefinita,
gli em si comportano in modo del tutto diverso (qui chiedo un po' al buon
Balestra: Safari si e' poi allineato a tale dimensione?).
E quindi, come ho citato prima, "Se lo fate in nome dell'accessibilita', vi
state prendendo in giro".
Se lo usi per comodita', e' un altro paio di maniche, ovviamente.
Non solo. Usando gli em ed i percentuali, c'e' sempre il rischio di
moltiplicazione dei valori, risultando o troppo grandi o troppo piccoli.
Con le parole chiave non hai affatto di questi problemi. Un carattere small
e' small. Nidificazione dei tag o meno.. non diventa x-small o xx-small.
Tra l'altro, su Gecko e le ultime versioni di IE, l'xx-small non potra' mai
essere inferiore a 9px.
Certo, anche le parole chiave si basano - come per gli em - sulle
impostazioni predefinite dell'utente, ma come ti ho detto c'e' una soglia
minima oltre il quale non scendono.
Tutto questo sarebbe perfetto se non che c'e' stato un piccolo errore di
implementazione da parte di qualche browser, ma si risolve facilmente con
un po' di hack sui CSS (come per il box model).
-- 
C'ya,
  ZER0 :: coder.gfxer.webDesigner();
Come devo regolare la stampante laser per stordire?
(How do I set a laser printer to stun?)

 un po' di hack sui CSS (come per il box model).
Appunto :-)


 Appunto :-)
"Appunto" cosa? Si tratta unicamente di un'errata interpretazione di IE, e
fortunatamente questo comportamento e' possibile evitarlo facilmente,
tramite hack; cosa che non puoi fare usando em o percentuali.
Si deve gia' fare l'hack per IE5 e compagnia, tra le altre cose, circa il
box model. Quindi e' mal di poco davvero.
Te l'ho detto, nella fase "valori in em" ci sono passato anche io. Poi ho
cambiato nuovamente approccio.
Sulle intranet li ho usati ancora, ma essenzialmente per comodita' non
certo per un discorso di accessibilita'.
Cmq credo che ti convenga fare un giro sui siti personali dei "guru" del
w3c, utilizzano le tecniche che ti ho appena descritto. E saranno
sicuramente piu' "convincenti" di me :)
-- 
C'ya,
  ZER0 :: coder.gfxer.webDesigner();
Il computer e' una macchina progettata per velocizzare e automatizzare
gli errori.

 certo per un discorso di accessibilita'.
Non mi sembra che stiamo parlando di accessibilita', al di la' della 
citazione che hai riportato mi sembrava che si discutesse solo di resa 
in dimensione del testo... o almeno di questo sto parlando io.


 in dimensione del testo... o almeno di questo sto parlando io.
Pure io, ma per me questa e' accessibilita', soprattutto quando si parla di
internet.
BTW, stavo solo rimarcando che l'uso degli em non lo si fa certo per
l'accessibilita'; e che se sviluppi un sito secondo i dettami del W3C
(separare il contenuto dalla forma, o come dico io la sostanza
dall'apparenza), non e' certo l'em/percentuali la scelta migliore
(*sarebbe* dovuta esserlo).
-- 
C'ya,
  ZER0 :: coder.gfxer.webDesigner();
Io non soffro di pazzia, ne godo ogni minuto.
(I don't suffer from insanity, I enjoy every minute of it)

 internet.
"Accessibilita'" da un paio d'anni a questa parte (almeno) mi sembra che 
abbia un significato piu' preciso sopratutto su Interset, e mi riferisco 
alla WAI.
Non a caso ho sempre (spero! :-) scritto "fruibili" limitando il 
discorso ai browser, con l'Accessibilita' _vera_ (disabili) confesso di 
non essermi ancora confrontato.
La tua frase: "La resa dei font, *e'* accessibilita', non ti pare?" che 
riassume un po' tutto cio' di cui abbiamo parlato la leggo meglio cosi':
"La resa dei font e' uno dei primi passi verso l'accessibilita'".
Giusto per puntualizzare, per il resto niente da eccepire.


 Giusto per puntualizzare
Idem. Sai quanto adoro mettere i punti sulle i. :)
-- 
C'ya,
  ZER0 :: coder.gfxer.webDesigner();
You don't have to be crazy to be a webmaster. But it helps.

> Idem. Sai quanto adoro mettere i punti sulle i. :)
Cioe' cosi':
 ï
o cosi':
...
 l
Scusate, ho sempre desiderato dirlo?!?
E' colpa della mia professoressa di filosofia che ci rompeva le palle alle
superiori...

 Idem. Sai quanto adoro mettere i punti sulle i. :)
(*) e tu quanto mi diverto a mettere le sbarrette alle t :-P


 modificare il font mi sembra che sia proprio il primo passo.
Si, capisco e relativamente approvo il tuo punto di vista, ma definirlo un
"primo passo" IMVHO ne minimizza l'importanza.
-- 
C'ya,
  ZER0 :: coder.gfxer.webDesigner();
Tutti quelli che credono nella psicocinesi, per favore alzino la mia mano.