Convertor em în px

Ultima verificare a conținutului:

1,5 em înseamnă 24 px atunci când elementul părinte are fontul de 16 px. Convertorul înmulțește valoarea în em cu mărimea fontului elementului părinte și arată rezultatul pe măsură ce scrieți. Dacă elementul părinte are altă mărime, treceți-o în al treilea câmp.

em
px
în

Ce este em în CSS și cât înseamnă un pixel?

em este o unitate de lungime din CSS care depinde de mărimea fontului. Un em este egal cu mărimea calculată a fontului elementului în care este folosit[1]. Când em apare ca valoare a proprietății font-size, calculul pornește de la mărimea fontului elementului părinte, pentru că mărimea elementului însuși abia se stabilește prin acea valoare[1]. Acest număr îl cere câmpul „Font-size al elementului părinte” din convertor.

Pixelul (px) face parte din unitățile absolute ale CSS: 1px este definit ca 1/96 dintr-un inch[1]. De aceea convertorul din inchi în px dă 96 px la un inch când rezoluția este de 96 DPI. Wikipedia în limba română descrie pixelul ca element component al imaginilor grafice digitale[2]. Transformarea em în pixeli arată câți pixeli înseamnă o valoare relativă într-un anumit loc din pagină.

Cod CSS cu regula .hero, unde font-size este 60px, și cu o regulă de titlu de 220px
Regula .hero stabilește fontul la 60 px. Un element aflat direct în acest bloc, cu font-size: 0.5em, ajunge la 30 px, pentru că elementul lui părinte are 60 px. Același 0.5em într-un paragraf de 16 px dă 8 px. Foto: Ferenc Almasi, Unsplash.

Câți pixeli are 1 em?

Când elementul părinte are fontul de 16 px, 1 em înseamnă 16 px, iar 1,5 em înseamnă 24 px. Formula are o singură înmulțire: pixeli = em × mărimea fontului elementului părinte. Dacă niciun element părinte nu are font propriu, 1 em este egal cu mărimea implicită a browserului, de obicei 16 px[3].

Diferența apare acolo unde se schimbă elementul părinte. Într-un card cu fontul de 14 px, 1,5 em dă 21 px. Într-o secțiune cu fontul de 20 px, aceeași valoare dă 30 px. Aceeași scriere înseamnă alt număr de pixeli în locuri diferite, și tocmai prin asta em se deosebește de rem, care se calculează întotdeauna din elementul rădăcină.

De aceea convertorul are un al treilea câmp, pentru mărimea elementului părinte. El ia orice număr între 1 și 200 px, se deschide cu 16 și acceptă și un procent, de pildă „150%”, calculat din cei 16 px impliciți. Rezultatul apare cu cel mult două zecimale: 0,875 em cu un părinte de 13 px dă 11,38 px.

Cum transformați em în px? Formula și trei exemple

Formula este px = em × font-size al elementului părinte. Să calculăm 1,25 em în trei locuri. Cu părintele implicit de 16 px iese 1,25 × 16 = 20 px. Într-un card de 14 px aceeași valoare dă 17,5 px. Într-o secțiune de 20 px urcă la 25 px.

Un detaliu schimbă calculul. În afara proprietății font-size, de exemplu în padding, margin sau width, em se calculează din mărimea fontului elementului însuși[1]. Să luăm un buton dintr-un bloc de 16 px, care are font-size: 1.25em și padding: 1em. Textul butonului ajunge la 20 px. Spațiul interior este tot de 20 px, pentru că em din padding se calculează din fontul propriu al butonului. Pentru astfel de valori treceți în câmpul părintelui mărimea fontului elementului însuși.

Operația inversă este împărțirea și o face convertorul px în em, cu același câmp pentru elementul părinte. Pentru rem, unitatea care se calculează mereu din elementul rădăcină html, există convertorul rem în px. În editoarele de text mărimea fontului se scrie în puncte; în CSS 12 puncte înseamnă 16 px, iar această transformare o face convertorul pt în px.

Planșă cu mostre din fontul Leichte Erbar-Grotesk, în mărimi de la 4 la 20 de puncte
Planșa de mostre arată un singur font în mărimi de la 4 la 20 de puncte. Mărimea fiecărui rând este punctul de plecare pentru valorile em scrise în el. În rândul de 10 puncte, 1,5 em înseamnă 15 puncte, iar în rândul de 20 de puncte înseamnă 30. Imagine: domeniu public, Wikimedia Commons.

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

Prima coloană este pentru părintele implicit de 16 px. A doua arată un card scris cu 0.875rem, adică 14 px. A treia arată cei 20 px pe care îi dă opțiunea „Mare” din lista „Dimensiunea fontului” din Chrome. Rândurile evidențiate sunt 1 em și 1,5 em.
Valoarea în emPărinte de 16 pxPărinte de 14 pxPărinte de 20 px
0,25 em4 px3,5 px5 px
0,5 em8 px7 px10 px
0,625 em10 px8,75 px12,5 px
0,75 em12 px10,5 px15 px
0,8 em12,8 px11,2 px16 px
0,875 em14 px12,25 px17,5 px
0,9 em14,4 px12,6 px18 px
1 em16 px14 px20 px
1,125 em18 px15,75 px22,5 px
1,2 em19,2 px16,8 px24 px
1,25 em20 px17,5 px25 px
1,375 em22 px19,25 px27,5 px
1,5 em24 px21 px30 px
1,625 em26 px22,75 px32,5 px
1,75 em28 px24,5 px35 px
1,875 em30 px26,25 px37,5 px
2 em32 px28 px40 px
2,25 em36 px31,5 px45 px
2,5 em40 px35 px50 px
2,75 em44 px38,5 px55 px
3 em48 px42 px60 px
3,5 em56 px49 px70 px
4 em64 px56 px80 px
5 em80 px70 px100 px
6 em96 px84 px120 px
8 em128 px112 px160 px
Numerele din celule au fost calculate chiar de convertor și scrise la fel ca în câmpul rezultatului, cu cel mult două zecimale.

Cum crește font-size: 1.25em în elemente imbricate?

În font-size, em se calculează din elementul părinte, așa că aceeași valoare se înmulțește de fiecare dată cu rezultatul nivelului anterior[3]. Fiecare element din tabel are font-size: 1.25em și stă în interiorul celui dinaintea lui. Elementul părinte al primului nivel are 16 px.
NivelMărimea elementului părinteCalculMărimea textului
Nivelul 1 (exterior)16 px16 × 1,2520 px
Nivelul 220 px20 × 1,2525 px
Nivelul 325 px25 × 1,2531,25 px
Nivelul 431,25 px31,25 × 1,2539,06 px
Nivelul 5 (interior)39,06 px39,06 × 1,2548,83 px
La al cincilea nivel textul ajunge la 48,83 px, adică de peste trei ori mai mult decât cei 16 px de la început. Scrisă ca 1.25rem, aceeași valoare ar rămâne 20 px la fiecare nivel.

Prin ce se deosebesc em, rem și px?

Toate cele trei unități ajung în final pixeli pe ecran. Se deosebesc prin numărul de la care pornește calculul.
Caracteristicăemrempx
Din ce se calculeazăDin fontul elementului părinte în font-size și din fontul elementului însuși în celelalte proprietățiDin fontul elementului rădăcină, adică htmlValoare fixă: 1px înseamnă 1/96 dintr-un inch
O unitate la setările implicite16 px16 px1 px
În elemente imbricateÎn font-size se înmulțește din nou la fiecare nivelRămâne aceeași la orice adâncimeRămâne același
Când cititorul mărește fontul din browserCrește, dacă niciun element părinte nu are o mărime fixă în pixeliCreșteRămâne același
Într-o interogare media (@media)Se calculează din mărimea inițială a fontului browserului; regulile din pagină nu îl influențeazăSe calculează la fel, din mărimea inițială a fontuluiSe folosește exact așa cum este scris
Pentru ce se potriveșteSpații și pictograme care trebuie să crească odată cu textul elementuluiMărimi de text și o scară de spații valabile în toată paginaChenare subțiri, a căror grosime nu se schimbă odată cu textul
Rândul despre interogările media se bazează pe documentul W3C Media Queries Level 4[4].

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

Câmpul acceptă și calculează fiecare intrare din tabel, așa că nu trebuie să curățați nimic înainte de a lipi valoarea. Lipiți-o exact așa cum ați copiat-o din foaia de stil sau din DevTools: cu virgulă ori cu punct, împreună cu em sau ca linie întreagă. Numerele din coloana rezultatului au fost calculate de convertor cu un părinte de 16 px.
Ce scrieți sau lipițiRezultatCum citim intrarea
Primul câmp: valoarea în em, părinte de 16 px
1,524 pxVirgula este semnul zecimal în limba română; citim 1,5 em ca atare și înmulțim cu 16.
1.5em24 pxValoare copiată din foaia de stil împreună cu unitatea: punctul de lângă em este semn zecimal, câmpul arată 1,5 și lasă deoparte literele em.
1,5 em24 pxSpațiul dintre număr și unitate nu încurcă: sărim peste spațiu și peste unitate și calculăm 1,5 em.
.875em14 pxÎn fișierele CSS minificate zeroul dinaintea punctului lipsește; o astfel de valoare o citim ca 0,875 em.
font-size: 1.5em;24 pxLinie întreagă din DevTools sau din foaia de stil: luăm numărul, iar numele proprietății și punctul și virgula rămân deoparte.
font-size: 1.5em !important;24 px!important de la capătul liniei nu schimbă calculul; în câmp rămâne doar numărul 1,5.
letter-spacing: 0.05em;0,8 pxCalculăm și valorile mici, cum este spațierea dintre litere: 0,05 em într-un text de 16 px înseamnă 0,8 px.
margin-left: -0.5em;-8 pxLa un spațiu negativ păstrăm semnul minus de lângă număr, așa că și rezultatul este negativ.
−0.5em-8 pxMinusul tipografic (−), care ajunge în clipboard odată cu textul unui document, este citit ca minus obișnuit.
3/412 pxFracție simplă: împărțim 3 la 4, deci valoarea este 0,75 em.
1½24 pxFracția scrisă cu un singur semn apare în câmp ca 1 1/2 și este calculată ca 1,5 em.
1.875em30 pxPunctul împreună cu em este scriere de CSS, așa că citim 1,875 em. Sub câmp apare o indicație cu a doua citire posibilă, 1875.
1.87530 pxUn punct singur îl citim întotdeauna ca separator zecimal, și fără unitate, așa că socotim 1,875 em. Sub câmp apare o indicație, iar o mie opt sute șaptezeci și cinci se scrie 1875 sau 1 875.
1,87530 pxAceeași valoare cu virgulă este citită ca zecimală, iar rezultatul este de 30 px. Sub câmp apare din nou o indicație.
1.5rem24 pxAcceptăm și o valoare în rem lipită în câmpul em: numărul este calculat ca 1,5 em și, cu un părinte de 16 px, dă același rezultat ca rem.
Câmpul „Font-size al elementului părinte”: în coloana rezultatului este mărimea citită de câmp
13,513,5 pxAcceptăm și o mărime cu virgulă zecimală; câmpul ia orice valoare între 1 și 200 px.
font-size: 20px20 pxLinie copiată din fila „Calculate” din DevTools: luăm numărul, iar numele proprietății și unitatea rămân deoparte.
150%24 pxProcentul este calculat din cei 16 px impliciți: 150 % din 16 înseamnă 24.
87,5%14 pxCitim și un procent cu virgulă zecimală: 87,5 % din 16 înseamnă 14 px.
Fiecare rând a fost verificat în câmpurile acestei pagini. Dacă linia conține mai multe numere, ca padding: 0.5em 1em, câmpul vă cere un singur număr; atunci lipiți separat valoarea pe care vreți să o transformați.

Cum aflați mărimea fontului elementului părinte în Chrome?

Numărul pentru câmpul părintelui se poate citi chiar din pagină. Pașii sunt pentru DevTools, instrumentele pentru dezvoltatori din Chrome; numele panourilor și ale filelor sunt cele din interfața în limba română.

  1. Deschideți DevTools

    Apăsați F12 în pagina deschisă. În Windows același panou se deschide cu Ctrl+Shift+I, iar pe Mac cu Cmd+Option+I[5].
  2. Alegeți elementul potrivit

    Găsiți elementul în arborele HTML din panoul „Elemente”. Dacă aveți nevoie de em pentru font-size, alegeți elementul părinte care îl conține; în arbore el stă cu o treaptă mai la stânga. Dacă îl scrieți în padding ori în margin, alegeți chiar elementul.
  3. Citiți valoarea calculată

    Deschideți fila „Calculate” și scrieți font-size în câmpul „Filtru”. Fila arată valoarea aplicată cu adevărat elementului, adică pixelii rezultați după ce browserul a calculat toate regulile[5].
  4. Treceți numărul în convertor

    Scrieți valoarea în câmpul „Font-size al elementului părinte”. Puteți lipi și 18px sau font-size: 18px, cu tot cu unitate; câmpul ia numărul.
  5. Dacă meniul apare în altă limbă

    Deschideți „Setări” în DevTools, iar în secțiunea „Preferințe” alegeți limba română din lista „Limba:” și reîncărcați DevTools. De la Chrome 94, DevTools este disponibil în peste 80 de limbi[6].

Câți pixeli înseamnă em în line-height și în interogările media?

Înălțimea rândului se scrie tot în em, însă se moștenește altfel. Valoarea line-height: 1.5em este transformată o singură dată în pixeli, din fontul elementului, iar elementele copil moștenesc valoarea gata calculată în pixeli. Un număr fără unitate, 1.5, se înmulțește din nou cu fontul fiecărui element copil[7].

În exemplul de pe MDN, un titlu de 30 px stă într-un container cu fontul de 15 px. Cu line-height: 1.1 titlul primește o înălțime de rând de 33 px. Cu 1.1em înălțimea rămâne 16,5 px, pentru că em este calculat în container și ajunge la titlu ca pixeli deja calculați[7]. Pentru textul paragrafelor, MDN recomandă o valoare de cel puțin 1.5; la un text de 16 px asta înseamnă o înălțime de rând de 24 px[7].

În interogările media, em ascultă de altă regulă. O condiție precum @media (min-width: 48em) nu depinde de regulile font-size din pagină și se calculează din mărimea inițială a fontului browserului[4]. La cei 16 px impliciți, 48em înseamnă 768 px. Dacă cititorul mărește fontul browserului la 20 px, aceeași condiție se aplică de la o lățime de 960 px. Valoarea în em a unui punct de întrerupere din machetă o puteți calcula în convertorul px în em, cu părintele lăsat la 16.

Convertiți alte unități în Pixeli

Surse

  1. CSS Values and Units Module Level 4 — W3C
  2. Pixel — Wikipedia
  3. font-size — MDN Web Docs
  4. Media Queries Level 4 — W3C
  5. CSS features reference — Chrome for Developers
  6. What's New In DevTools (Chrome 94) — Chrome for Developers
  7. line-height — MDN Web Docs
  8. CSS unit: em — Can I email
  9. CSS unit: rem — Can I email
  10. CSS Syntax Module Level 3 — W3C
  11. CSS 2.1: Syntax and basic data types — W3C

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 em în px

Un em înseamnă întotdeauna 16 px?

Un em este egal cu mărimea fontului elementului părinte, iar 16 px este mărimea implicită a browserului. Dacă niciun element nu are o mărime proprie, 1 em este egal cu această valoare implicită, care de obicei este 16 px[3]. Într-un card cu fontul de 14 px, 1 em înseamnă 14 px.

Câți px înseamnă 1,5 em?

Cu un părinte de 16 px, 1,5 em înseamnă 24 px. Cu un părinte de 14 px iese 21 px, iar cu unul de 20 px iese 30 px.

Câți pixeli înseamnă 0,875 em?

Cu un părinte de 16 px, 0,875 em înseamnă exact 14 px. Cu un părinte de 14 px iese 12,25 px, iar cu unul de 20 px iese 17,5 px. În puncte, 14 px înseamnă 10,5 pt, număr pe care îl calculează convertorul px în pt.

Câți pixeli înseamnă 0,75 em?

Cu un părinte de 16 px, 0,75 em înseamnă 12 px. Dacă părintele are 14 px, rezultatul este 10,5 px, iar dacă are 20 px, rezultatul este 15 px.

Câți px înseamnă 2 em?

Cu un părinte de 16 px, 2 em înseamnă 32 px. Dacă două elemente imbricate au amândouă font-size: 2em, textul celui interior ajunge la 64 px, pentru că al doilea em se calculează din cei 32 px ai primului.

Funcționează em în șabloanele de e-mail?

Da. În testul Can I email din 2020, unitatea em a funcționat în 100 % dintre clienții de e-mail 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].

Se schimbă em dacă măriți fontul din browser?

Da, dacă niciun element părinte nu are o mărime fixă în pixeli. Când am ales „Mare” în Chrome, în „Setări” › „Aspect” › „Dimensiunea fontului”, fontul elementului html a urcat la 20 px. Într-o astfel de pagină, 1,5 em înseamnă 30 px.

Cum se scrie în foaia de stil: 1,5em sau 1.5em?

Scrieți 1.5em. CSS citește partea zecimală a unui număr doar după punct[10] și sare peste o declarație cu valoare nevalidă[11]. Când am verificat acest lucru în Chrome, în Firefox și în motorul WebKit, pe care merge Safari, elementul cu font-size: 1,5em a rămas la mărimea părintelui, adică 16 px. De aceea butonul „Copiați rezultatul” copiază numărul cu punct.

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

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

Ați găsit o valoare în em care dă alt rezultat în pagina dumneavoastră sau aveți o idee pentru convertor? Scrieți-ne.