Sono tre tipi di misure diverse, e non esiste (ne` puo` esistere) un rapporto fisso.
La % si riferisce alla misura del blocco che contiene quello da formattare: e` valida se vuoi suddividere uno spazio in maniera proporzionale tra vari blocchi. Non e` adatta se devi contenere prevalentemente immagini (che sono intrinsecamente definite in px).
I px si riferiscono alla misura del px dello scehrmo: chiaramente non puoi conoscere quanto vale, dato che dipende dalle impostazioni del monitor dell'utente. E` adatta per immagini e blocchi che contengono immagini.
Gli em sono una misura proporzionale al carattere usato in qual momento: e` quindi adatta se devi contenere del testo, tipo un menu testuale, in cui non vuoi che le singole voci vadano a capo, oppure per definire una larghezza massima di un testo. Non e` adatto a blocchi che contengono prevalentemente immagini.
Da qualche parte dicono che lo "standard" e` 1em==12px. Io non sono d'accordo, perche` questo vuol dire che esiste uno standard di vista degli utenti: forse c'e` una vista media, ma definire uno standard di vista e` un'assurdita`. E comunque trovi persone che vedono bene i caratteri anche a 10px, e persone che hanno necessita` di almeno 16px per poter leggere. La cosa non si presta ad una standardizzazione.
E la proporzione si puo` far valere (con le riserve di cui sopra) per il rapporto em/px (e comunque in ogni blocco esiste un rapporto definito em/px, anche se questo non e` a conoscenza del programmatore).
Invece con le % non si puo` trovare un rapporto, dato che dipende da dove e` inserito un blocco.