Convertor px în em

Ultima verificare a conținutului:

24 px înseamnă 1,5 em atunci când elementul părinte are fontul de 16 px. Convertorul împarte pixelii la mărimea fontului elementului părinte și arată rezultatul cu până la patru zecimale. Treceți mărimea din machetă, iar rezultatul copiați-l cu punct, dintr-o apăsare.

px
em
în

Ce este pixelul și ce mărime exprimă em?

Programele de design dau mărimile în pixeli. Modul Dev Mode din Figma scrie cod CSS în px sau în rem și explică px ca pixel logic definit de browser[1]. După standardul CSS, 96 px înseamnă un inch[2]; de aceea convertorul px în inchi se deschide la 96 DPI și dă un inch la 96 px. Wikipedia în limba română arată că numele vine din engleză, de la PICture ELements, și că pixelul se prescurtează „px”[3].

em lucrează ca un multiplicator: arată de câte ori trebuie luată mărimea fontului din locul în care este scris. În proprietatea font-size se înmulțește fontul elementului părinte, iar în celelalte proprietăți, cum sunt padding și margin, fontul elementului însuși[2]. Transformarea pixelilor în em preface o mărime fixă din machetă într-un asemenea multiplicator.

Câți em înseamnă 24 px?

Când elementul părinte are fontul de 16 px, 24 px înseamnă 1,5 em. Calculul este o singură împărțire: em = pixeli ÷ mărimea fontului elementului părinte. Cu un părinte de 16 px, un pixel înseamnă 0,0625 em, iar celelalte valori sunt multipli ai acestui număr. De pildă, 12 px înseamnă 0,75 em, iar 20 px înseamnă 1,25 em. Mărimea implicită a fontului în browsere este de obicei 16 px[4], iar cu acest număr se deschide câmpul părintelui.

Ca rezultatul să fie corect, împărțitorul trebuie să fie fontul din locul în care va fi scris em. Pentru font-size luați mărimea elementului părinte. Pentru padding, margin sau width luați fontul elementului însuși. De aceea, într-un buton cu text de 20 px, un spațiu interior de 10 px înseamnă 0,5 em, chiar dacă elementul părinte are 16 px.

Convertorul arată rezultatul cu până la patru zecimale. 17 px cu un părinte de 16 px înseamnă exact 1,0625 em. Aceiași 17 px cu un părinte de 14 px dau 1,2143 em după rotunjire.

Cum transformați px în em? Formula și semnul zecimal

Formula este em = px ÷ font-size al elementului părinte. Să împărțim 20 px în trei locuri. Cu un părinte de 16 px iese 1,25 em. Cu un părinte de 14 px iese 1,4286 em. Dacă elementul părinte are tot 20 px, rezultatul este exact 1 em.

În limba română semnul zecimal este virgula, iar CSS citește partea zecimală a unui număr doar după punct[5]. Dacă în foaia de stil scrieți font-size: 1,25em, browserul consideră declarația nevalidă și sare peste ea[6]. Am măsurat acest lucru în Chrome, în Firefox și în motorul WebKit, pe care merge Safari: într-un părinte de 16 px, elementul cu 1,5em a rămas la 16 px, iar cel cu 1.5em a ajuns la 24 px.

De aceea convertorul ține cele două scrieri separate. Câmpul rezultatului arată numărul cu virgulă, așa cum se scrie românește. Butonul „Copiați rezultatul” copiază numărul cu punct și fără unitate, așa că 1,0938 de pe ecran ajunge în clipboard ca 1.0938.

Operația inversă o face convertorul em în px. Dacă mărimea trebuie să fie aceeași în toată pagina, adică să se calculeze din elementul rădăcină, folosiți convertorul px în rem. Câte puncte înseamnă aceiași pixeli pe hârtie vă arată convertorul px în pt.

Cod CSS al regulii a.fs-link, cu padding: 4px 2px și cu o expresie calc() care folosește 1em
Regula a.fs-link scrie spațiul interior în pixeli, iar poziția fundalului, în calc(), cu 1em. Partea în pixeli rămâne fixă, iar partea în em se schimbă odată cu fontul linkului. Pentru un link de 16 px expresia dă 12,4 px, iar pentru unul de 20 px dă 16 px. Foto: FONG, Unsplash.

Tabel de transformare din px în em pentru un părinte de 16, 14 și 20 px

Coloana din stânga are valorile în pixeli din machetă. Celelalte trei arată aceeași valoare în em, la un părinte de 16, 14 și 20 px. Rândurile evidențiate sunt 16 și 24 px.
Valoarea în pixeliPărinte de 16 pxPărinte de 14 pxPărinte de 20 px
1 px0,0625 em0,0714 em0,05 em
2 px0,125 em0,1429 em0,1 em
4 px0,25 em0,2857 em0,2 em
6 px0,375 em0,4286 em0,3 em
8 px0,5 em0,5714 em0,4 em
10 px0,625 em0,7143 em0,5 em
11 px0,6875 em0,7857 em0,55 em
12 px0,75 em0,8571 em0,6 em
13 px0,8125 em0,9286 em0,65 em
14 px0,875 em1 em0,7 em
15 px0,9375 em1,0714 em0,75 em
16 px1 em1,1429 em0,8 em
17 px1,0625 em1,2143 em0,85 em
18 px1,125 em1,2857 em0,9 em
20 px1,25 em1,4286 em1 em
22 px1,375 em1,5714 em1,1 em
24 px1,5 em1,7143 em1,2 em
26 px1,625 em1,8571 em1,3 em
28 px1,75 em2 em1,4 em
30 px1,875 em2,1429 em1,5 em
32 px2 em2,2857 em1,6 em
36 px2,25 em2,5714 em1,8 em
40 px2,5 em2,8571 em2 em
44 px2,75 em3,1429 em2,2 em
48 px3 em3,4286 em2,4 em
56 px3,5 em4 em2,8 em
64 px4 em4,5714 em3,2 em
72 px4,5 em5,1429 em3,6 em
96 px6 em6,8571 em4,8 em
128 px8 em9,1429 em6,4 em
Valorile în em sunt scrise la fel ca în câmpul rezultatului, cu cel mult patru zecimale. Când le duceți în foaia de stil, puneți punctul ca semn zecimal: 0,8125 em se scrie în CSS 0.8125em.

Ce mărimi se scriu în em, în rem sau în px?

Aceeași valoare în pixeli se transformă în unități diferite, după rolul ei în machetă. Tabelul arată, pentru opt mărimi, unitatea potrivită, motivul și scrierea în CSS la un font de 16 px.
Mărimea din machetăUnitateMotivScrierea în CSS la 16 px
Mărimea textului principal, 18 pxremRămâne aceeași în toată pagina și urmează setarea cititorului1.125rem
Spațiul interior al unui buton, 12 pxemCrește odată cu textul butonului0.75em
Retragerea unei liste, 24 pxemRămâne proporțională cu mărimea textului din listă1.5em
Punct de întrerupere, 768 pxemÎn interogarea media, em se calculează din mărimea inițială a fontului și urmează setarea cititorului48em
Spațiu într-un șablon de e-mail, 16 pxemÎn testul Can I email, em a funcționat în toți clienții, iar rem nu a funcționat în Outlook pentru Windows1em
Chenar subțire, 1 pxpxLinia rămâne de un pixel la orice mărime a textului1px
Distanța dintre secțiuni, 32 pxremScara de spații din pagină rămâne una singură2rem
Lățimea maximă a unei coloane de text, 640 pxemLungimea rândului se schimbă odată cu mărimea textului40em
Rândul despre punctul de întrerupere se bazează pe Media Queries Level 4 de la W3C[7]. Rândul despre e-mailuri se bazează pe testele em și rem de la Can I email[8][9]. Valorile în rem din tabel le calculează convertorul px în rem, cu elementul rădăcină la 16 px.

Ce se schimbă între pixeli și em pe drumul de la machetă la cod?

În machetă mărimile sunt scrise în pixeli, iar în cod pot fi scrise în em. Tabelul arată, după șase caracteristici, cum se poartă cele două unități la această trecere.
CaracteristicăPixeli (px)em
De unde vine valoareaDin fișierul machetei sau dintr-o măsurătoare pe ecranDintr-un calcul: pixeli ÷ mărimea fontului
De ce depindeValoare fixă: 96px înseamnă un inchDe fontul din locul în care este scris
Când cititorul mărește textulRămâne acelașiCrește odată cu textul
Când aceeași componentă este pusă cu text mai mareFiecare mărime trebuie schimbată separatMărimile se recalculează din noul font
font-size în elemente imbricateAcelași la fiecare nivelSe înmulțește de fiecare dată cu rezultatul nivelului anterior
Scrierea în foaia de stil13px0.8125em, cu punct
Cei 96 px la un inch din coloana pixelilor sunt definiția din standardul CSS, iar rândurile despre em decurg din definiția lui em din același standard[2].

Ce intrări acceptă convertorul px în em?

Lipiți valoarea exact așa cum ați copiat-o din programul de design, din foaia de stil sau dintr-un mesaj: câmpul acceptă fiecare intrare din tabel și o transformă în em. Nu trebuie curățată dinainte. Coloana rezultatului a fost calculată de convertor cu un părinte de 16 px.
Ce scrieți sau lipițiRezultatCum citim intrarea
Primul câmp: valoarea în pixeli, părinte de 16 px
241,5 emNumăr simplu din panoul machetei: împărțim 24 la 16.
24px1,5 emLa o valoare copiată cu tot cu unitate, literele px rămân deoparte și împărțim doar numărul.
24 de pixeli1,5 emAcceptăm și valoarea cu unitatea scrisă în cuvinte: sărim peste „de pixeli” și luăm numărul.
font-size: 24px;1,5 emÎntr-o linie întreagă din foaia de stil, numele proprietății și punctul și virgula nu intră în calcul.
17,51,0938 emPixeli cu zecimale scriși cu virgulă, ca în limba română: rotunjim rezultatul la patru zecimale.
17.5px1,0938 emPunctul de lângă px este semn zecimal, ca în CSS; câmpul îl arată ca 17,5.
13.50,8438 emDupă punct stă o singură cifră, deci punctul este citit ca semn zecimal: 13,5 px.
1.2000,075 emUn punct singur îl citim întotdeauna ca separator zecimal, așa că socotim 1,2 pixeli. Sub câmp apare o indicație, iar o mie două sute se scrie 1200 sau 1 200.
1,2000,075 emAceeași scriere cu virgulă înseamnă altceva: virgula este semn zecimal, deci valoarea este 1,2 px. Sub câmp apare o indicație cu a doua citire posibilă, 1200.
margin-top: -8px;-0,5 emSemnul minus de lângă numărul unui spațiu negativ rămâne, așa că și valoarea în em iese negativă.
Câmpul părintelui: în coloana rezultatului este mărimea în pixeli citită de câmp
14px14 pxȘi la o mărime scrisă cu tot cu unitate luăm doar numărul.
font-size: 18px;18 pxDintr-o linie întreagă, copiată din fila „Calculate”, luăm numărul.
125%20 pxȘi un procent peste 100 se calculează din cei 16 px impliciți: 125 % înseamnă 20 px.
Dacă linia conține mai multe numere, ca font: 16px/24px Arial, câmpul vă cere un singur număr; atunci lipiți separat valoarea pe care vreți să o transformați.

Cum transformați o mărime din Figma în em?

Ca să duceți o valoare în pixeli din machetă în foaia de stil ca em, vă trebuie două numere: mărimea în sine și fontul din care se va calcula em. Figma are interfața în engleză, japoneză, coreeană, franceză, germană, spaniolă și portugheză[10], așa că numele panourilor sunt date în engleză.

  1. Luați mărimea din machetă

    Alegeți obiectul în Figma și citiți mărimea fontului sau spațiul. În Dev Mode, secțiunea Code din panoul Inspect arată CSS în px sau în rem[1]. Dev Mode este disponibil în planurile plătite și cere un loc (seat) Full ori Dev[11].
  2. Găsiți fontul din care se calculează em

    Dacă pagina este deja deschisă în browser, apăsați F12 ca să deschideți DevTools[12]. În panoul „Elemente” alegeți elementul părinte pentru font-size, sau chiar elementul pentru padding și margin, și citiți font-size în fila „Calculate”.
  3. Scrieți ambele numere în convertor

    Treceți pixelii în primul câmp, iar mărimea găsită în câmpul „Font-size al elementului părinte”. Rezultatul în em apare imediat.
  4. Copiați rezultatul

    Apăsați „Copiați rezultatul”, lipiți numărul în foaia de stil și adăugați după el em, de exemplu 0.8125em. Numărul ajunge în clipboard cu punct, așa că nu mai aveți ce corecta.
  5. Verificați rezultatul în browser

    Reîncărcați pagina și uitați-vă din nou în fila „Calculate”. Valoarea font-size sau padding trebuie să arate același număr de pixeli ca macheta.

Când se potrivește em mai bine decât rem?

rem dă același rezultat în toată pagina, iar em leagă mărimile dintr-o componentă de fontul ei. Să zicem că spațiul interior al unui buton este scris în em. Ca să faceți butonul mai mare, e de ajuns să urcați fontul de la 16 la 20 px: spațiul de 0.75em crește singur de la 12 la 15 px.

În șabloanele de e-mail, em este acceptat de mai mulți clienți. În testul Can I email din 2020, em a funcționat în 100 % dintre clienții verificați[8]. rem a funcționat în 69,05 % dintre clienți și nu era acceptată în Outlook pentru Windows, versiunile 2003–2019[9]. Când transformați în em un spațiu dintr-un newsletter, treceți în câmpul părintelui fontul de bază al șablonului.

Planșă galbenă cu mostre de font, cu litera G albastră, semnul & și cuvinte scrise mai mic
Pe planșa de mostre, litera G mare stă lângă cuvinte culese cu corp mic. Într-un text de 16 px, o distanță de 8 px înseamnă 0,5 em. Lângă litera de 96 px, aceeași distanță înseamnă doar 0,0833 em, pentru că la transformarea în em împărțitorul este mărimea textului căruia îi aparține distanța. Foto: Mika Baumeister, Unsplash.

Convertiți Pixeli în alte unități

Surse

  1. Use code snippets in Dev Mode — Figma Help Center
  2. CSS Values and Units Module Level 4 — W3C
  3. Pixel — Wikipedia
  4. font-size — MDN Web Docs
  5. CSS Syntax Module Level 3 — W3C
  6. CSS 2.1: Syntax and basic data types — W3C
  7. Media Queries Level 4 — W3C
  8. CSS unit: em — Can I email
  9. CSS unit: rem — Can I email
  10. Change your language preference — Figma Help Center
  11. Guide to Dev Mode — Figma Help Center
  12. CSS features reference — Chrome for Developers

Toate valorile din tabele le-am calculat pornind de la definițiile unităților și le-am verificat prin calcul înainte de publicare. Datele istorice și denumirile unităților locale se bazează pe sursele enumerate mai sus.

Ultima verificare a conținutului: · redactat și verificat de echipa Arteon

Întrebări frecvente despre transformarea din px în em

Câți em înseamnă 1 px?

Cu un părinte de 16 px, un pixel înseamnă 0,0625 em. Cu un părinte de 14 px sunt 0,0714 em, iar cu unul de 20 px, 0,05 em.

Câți em înseamnă 12 px?

Cu un părinte de 16 px, 12 px înseamnă 0,75 em. Cu un părinte de 14 px rezultatul este 0,8571 em, iar cu unul de 20 px este 0,6 em.

Câți em înseamnă 14 px?

La un părinte de 16 px, 14 px înseamnă 0,875 em. Dacă elementul părinte are tot 14 px, iese exact 1 em, iar la 20 px iese 0,7 em.

Câți em înseamnă 16 px?

Când elementul părinte are tot 16 px, cei 16 px înseamnă exact 1 em. La un părinte de 14 px iese 1,1429 em, iar la unul de 20 px, 0,8 em.

Câți em înseamnă 18 px?

Cu un părinte de 16 px, 18 px înseamnă 1,125 em, adică cu doi pixeli mai mult decât cei 16 px impliciți. La un părinte de 14 px sunt 1,2857 em, iar la 20 px, 0,9 em.

Cum se rotunjește rezultatul din px în em?

Convertorul arată cel mult patru zecimale. 13 px cu un părinte de 16 px dau exact 0,8125 em, iar 17 px cu un părinte de 14 px sunt rotunjiți la 1,2143 em. Cu patru zecimale, abaterea într-un text de 16 px rămâne sub o miime de pixel.

Arată Figma valori în em?

Dev Mode din Figma scrie CSS în două unități: px și rem[1]. Ca să obțineți em, treceți în convertor pixelii din Figma și mărimea fontului elementului părinte.

Cum se scrie un punct de întrerupere în em?

Împărțiți pixelii la 16: 768 px devin 48em, iar 1 024 px devin 64em. În interogările media, em nu depinde de regulile font-size din pagină, așa că lăsați câmpul părintelui la 16[7]. În rem rezultatul este același, 48rem, și îl puteți verifica în convertorul px în rem.

Captură de ecran a instrumentului gratuit Arteon: Convertor px în em

Ajutați-ne să îmbunătățim instrumentele

O mărime din macheta dumneavoastră a dat altă valoare în em decât ați așteptat sau aveți o propunere pentru convertor? Scrieți-ne.