Ems ustvarjajo kaskadne učinke, jih je težko izračunati in ogrožajo odzivne dizajne; uporabite piksle, odstotke ali še bolje uporabite rem!
Ko gre za nastavitev velikosti pisave v CSS, se običajno uporabljata dve relativni enoti: em in rem. Obe enoti sta relativni glede na velikost pisave nadrejenega elementa, vendar obstaja nekaj ključnih razlik med njima. V tej objavi v spletnem dnevniku bomo raziskali razlike med rem in em ter kdaj jih je najbolje uporabiti.
Najprej opredelimo, kaj sta em in rem. Em je relativna merska enota, ki temelji na velikosti pisave nadrejenega elementa. Na primer, če je velikost pisave elementa body 16px, potem bi bilo 1em enako 16px. Če je velikost pisave podrejenega elementa nastavljena na 1,5 em, bi bila 1,5-krat večja od velikosti pisave nadrejenega elementa.
Rem je po drugi strani tudi relativna merska enota, vendar temelji na velikosti pisave korenskega elementa (običajno elementa HTML). To pomeni, da če je velikost pisave korenskega elementa nastavljena na 16 slikovnih pik, bi bil tudi 1rem enak 16 slikovnih pik, ne glede na to, kje v dokumentu je uporabljen.
Torej, kakšne so razlike med em in rem? Glavna razlika je v tem, da so enote em relativne glede na velikost pisave nadrejenega elementa, medtem ko so enote rem relativne glede na velikost pisave korenskega elementa. To pomeni, da na enote rem ne vplivajo spremembe velikosti pisave nadrejenih elementov, medtem ko lahko na enote em vplivajo kaskadni učinki.
Druga razlika je v tem, da je enote rem lažje izračunati kot enote em, zlasti ko imamo opravka z ugnezdenimi elementi. Ker enote rem temeljijo na korenskem elementu, vam pri nastavljanju velikosti pisave ni treba izračunati velikosti pisave vsakega nadrejenega elementa.
Kdaj torej uporabiti em proti rem? Enote Em se najbolje uporabljajo za velikosti pisave, ki morajo biti relativne glede na velikost pisave določenega nadrejenega elementa. Na primer, če želite, da je velikost pisave podnaslova 1,2-krat večja od velikosti pisave nadrejenega naslova, lahko za podnaslov uporabite 1,2em.
Po drugi strani pa je enote Rem najbolje uporabiti za velikosti pisav, ki morajo biti dosledne v celotnem dokumentu, ne glede na to, kje se uporabljajo. Na primer, če želite, da imajo vsi naslovi velikost pisave 2rem, lahko nastavite velikost pisave korenskega elementa na 16px in uporabite 2rem za vse naslove.
Skratka, enoti em in rem sta uporabni za nastavitev velikosti pisave v CSS, vendar imata različne primere uporabe. Enote em se najbolje uporabljajo za velikosti pisav, ki morajo biti relativne glede na velikost pisave določenega nadrejenega elementa, medtem ko se enote rem najbolje uporabljajo za velikosti pisav, ki morajo biti skladne v celotnem dokumentu.