Omvandla px till rem
Omvandla px till rem och em med valfri rotstorlek, skapa en omvandlingstabell och gör om alla px-värden i ett CSS-utdrag till rem med ett klick.
em är relativt till föräldraelementets teckenstorlek, rem till rotelementet (html).
Omvandla ett värde
Omvandlingstabell
| px | rem | em |
|---|
Omvandla ett CSS-utdrag
Så omvandlar du px till rem
- Ställ in Rotens teckenstorlek (px). Den är 16 i alla stora webbläsare om inte din stilmall ändrar den. Knapparna under fältet byter till 16 px, 10 px (tricket
html { font-size: 62.5%; }) eller 18 px. - Om du arbetar med em ställer du in Förälderns teckenstorlek för em (px): den beräknade teckenstorleken för elementet som innehåller det element du stylar.
- Under Omvandla ett värde skriver du i Pixlar (px), REM eller EM. De två andra fälten uppdateras medan du skriver, och raden under visar divisionen som används.
- Omvandlingstabell listar vanliga storlekar. Ersätt Pixelvärden med dina egna designtokens (avståndsskala, typografisk skala …) och använd Kopiera tabell för att klistra in resultatet i ett kalkylblad eller ett designdokument. Eftersom kommatecken skiljer värdena åt skriver du decimaler med punkt i listan, till exempel
0.5. - För att migrera befintlig kod klistrar du in den i CSS att omvandla, väljer alternativen och klickar på Omvandla px till rem. Läs in ett exempel visar en liten stilmall. Kopiera Omvandlad CSS med Kopiera.
Formlerna
- rem = px ÷ rotens teckenstorlek. Med standardvärdet 16 px blir 24px = 24 ÷ 16 = 1,5rem.
- em = px ÷ förälderns teckenstorlek. I en rubrik på 20 px blir 10px = 0,5em.
- px = rem × rotens teckenstorlek, och px = em × förälderns teckenstorlek.
I CSS-koden skrivs decimaler alltid med punkt (1.5rem), oavsett språk.
rem eller em: vilken ska jag använda?
rem (”root em”) syftar alltid på teckenstorleken för html-elementet, så 1.5rem betyder samma sak överallt på sidan. Det är det säkraste valet för teckenstorlekar, avstånd, maxbredder och mellanrum i layouten.
em syftar på elementets egen teckenstorlek (för font-size förälderns). Värdena multipliceras: en lista på 0,9em som är nästlad tre gånger hamnar på 0,9 × 0,9 × 0,9 = 73 % av basen. Det gör em praktiskt för sådant som ska skalas med sin egen text (padding i en knapp, storleken på en ikon bredvid en etikett) men riskabelt för global typografi.
Därför är rem viktigt för tillgängligheten
Många höjer standardstorleken för text i webbläsarens inställningar (till exempel från 16 till 20 eller 24 px) i stället för att zooma varje sida. Storlekar i px ignorerar den inställningen; storlekar i rem eller em följer den. Med rem för text och avstånd växer hela layouten med läsarens val, vilket hjälper dig att uppfylla framgångskriterium 1.4.4 i WCAG 2.2 (ändra textstorlek upp till 200 %).
Av samma skäl bör du undvika att sätta html { font-size: 16px; } i px: använd en procentsats (100%, eller 62.5% om du vill att 1rem = 10px) så att användarens inställning fortfarande gäller.
Vad CSS-omvandlaren ändrar
Den ersätter tal som följs av px i deklarationer med värdet delat med rotens teckenstorlek. Den rör aldrig kommentarer, strängar eller url()-värden.
- Behåll bredd på border och outline i px:
border,border-*-width,outline,outline-offsetochcolumn-rulestannar i px, så att tunna linjer förblir skarpa.border-radiusomvandlas ändå. - Behåll värden på 1px: alla värden mellan −1px och 1px lämnas som de är.
- Omvandla mediefrågor till em (bas 16px): i villkoren för
@mediasyftar rem och em alltid på webbläsarens ursprungliga teckenstorlek, aldrig på dinhtml-regel, så verktyget delar med 16 och skriver em där, oavsett din rotstorlek. När alternativet är avmarkerat behåller mediefrågorna sina px.
Vanliga frågor
Hur många pixlar är 1rem?
16 px som standard. Om din stilmall sätter html { font-size: 62.5%; } är 1rem = 10 px, och värdet växer om användaren höjer webbläsarens standardstorlek för text.
Är rem samma sak som em?
Bara för element vars förälder använder rotens teckenstorlek. rem tittar alltid på html-elementet; em tittar på föräldern, så nästlade em-värden multipliceras.
Ska jag omvandla ramar till rem?
Oftast inte. En ram på 1px som omvandlas till 0.0625rem kan bli suddig eller försvinna på vissa skärmar vid ovanliga teckenstorlekar. Därför är alternativen för border och 1px påslagna som standard.
Gör zoomning rem onödigt?
Nej. Webbläsarens zoom skalar px och rem lika, men inställningen för standardstorlek på text skalar bara relativa enheter. Att stödja båda är en del av att respektera läsarens önskemål.
Skickas min CSS någonstans?
Nej. Omvandlingen sker helt i din webbläsare, och inget du klistrar in lämnar din enhet.
Relaterade verktyg
- Kalkylator för bildförhållande Räkna ut bildförhållande, förenkla bredd och höjd, ändra storlek med bibehållna proportioner och kopiera CSS-koden för aspect-ratio.
- Förhandsvisa typsnittskombinationer Förhandsvisa typsnittskombinationer för rubriker och brödtext med 20 fria typsnitt, justera storlek och radavstånd och kopiera CSS-koden.
- CSS-formaterare och minifierare Snygga till rörig CSS med rena indrag eller minifiera den med csso, och se storleken före och efter. Körs i din webbläsare, inget laddas upp.
- Box-shadow-generator Skapa CSS-skuggor i flera lager med direkt förhandsvisning. Ställ in förskjutning, oskärpa, spridning, färg och inset, och kopiera koden.