Webdesign: Hat rem in font-size (im Wurzelelement) Nachteile gegenüber em in font-size (im body-Element)?
Hallo, angenommen ich will die Schriftgröße definieren, dann würde ich es so machen:
html {font-size: 62.5%;}
und danach in anderen Elementen nur noch mit der Maßeinheit rem weitermachen, bei 20 Pixeln beispielsweise 2.0rem und so weiter. Das geht ja, weil ich die Basisschriftgröße oben mit 62.5% auf 10 Pixel gestellt habe.
Ich sehe aber auch Leute, die statt rem em im body-Element verwenden und so weitermachen. Ich bin noch nicht so erfahren und frage mich wieso, denn mir erscheint rem im Wurzelelement sinnvoller, aber vielleicht übersehe ich auch was. Bei folgender Angabe kommt es doch beispielsweise zu Verfälschungen der angegebenen Schriftgröße: Statt 0.70em wird im Ergebnis beispielsweise 0,665em herausgespuckt (0.95*0.70=0.665). Das wiederum lässt sich umgehen, wenn man mit rem im Wurzel-Element arbeitet. Sehe ich das verkehrt? Wieso sollte man dann noch die Schriftgröße mit em im body-Element definieren statt mit rem im Wurzel-Element?
body {font-size: 0.95em;}
article {font-size: 0.70em;}
2 Antworten
Nun rem ist schlicht neuer. Die Einheit em gab es schon ein paar Jahre bevor rem ins Spiel kam. Und nein wesentlich übersehen tust Du Nichts. Der einzige Unterschied zwischen em und rem liegt darin, dass rem den Wert des verwerbenden Elementes (Root) berücksichtigt, während em nur das Element selbst heran holt.
Letzteres ist praktisch wenn man unabhängig vom Gesamtbild einzelne Elemente konkret gestaltet haben will, dass man es anstelle von rem verwendet wird aber meist schlicht dem Alter der Projekte / Templates oder der Gewohnheit seiner Entwickler zuzusprechen sein. Es gibt zumindest keine Nachteile die gegen eine Verwendung von rem sprächen.
Der fehlende Browsersupport für Browser wie den ie8, der seit einem Jahrzehnt nur noch für sehr spezielle Intranetanwendung eine Fußnote wert wäre, fällt in der Praxis nicht ins Gewicht.
Jein, das kommt drauf an was man erreichen möchte. em ist eben um etwas relativ zur zur Schriftgröße des Elements zu gestalten.
Ggf. habe ich eine dicke Überschrift und möchte da quasi eine halbe Zeile Abstand drum rum haben, die ich mit einen Padding definiere. Hier ist dann em ganz passend, denn wenn ich die Schriftgröße ändere, dann bleibt es bei dieser halben Zeile Abstand.
Auf der anderen Seite möchte ich ggf. einen Abstand an der linken Seite haben aber der Text soll in einer Linie sein. Wenn ich hier em nutze und die Schriftgröße von einem Element ändere, dann habe ich da eine Schlangenlinie, hier wäre rem sinniger oder im Zweifel prozentuale Werte.
Oder ich habe einen Button, der ähnlich aussieht wie die Tags hier auf gutefrage und ich möchte diesen einfach nur 1:1 skalieren. Da macht dann em für alle Seiten Sinn.
Macht also meiner Meinung nach beides Sinn. Und häufig kann man es auch sinnig kombinieren.