für font-size
und line-height
Meine grundlegende CSS-Regel ist ziemlich einfach:Wie richtige Konsistenz CSS line-height zu erreichen
body {
font-family: Arial, Helvetica, sans-serif;
font-size: 16px;
line-height: 24px;
}
Wenn ich einen Absatz erstellen, die eine <em>
oder eine <strong>
enthält (oder sogar einige <code>
, die verwendet eine andere font-size
als die <body>
), stelle ich fest, dass diese Elemente die Zeilenhöhe um ein oder zwei Pixel erhöhen.
Dies führt mich zu der Annahme, dass die meisten Browser nehmen die größte Inline-Element zur Anzeige line-height
. Ist das richtig?
Mein Ziel ist es, die line-height
konsistent zu machen, unabhängig davon, welche Elemente inline sind.
Der einzige Weg, die ich gefunden habe ist die line-height
konsistent machen, um zu definieren:
em, strong, code, etc {
line-height: 100%;
}
Ist dies der richtige Weg, um dies zu? Oder bin ich zu sehr Perfektionist?
Edit 1:
Dies scheint auch zu funktionieren:
em, strong, code, etc {
line-height: 1;
}
Edit 2:
Nach einigen Tagen mit diesem zu spielen, scheint es nicht, dass Es gibt eine zuverlässige Lösung, um eine konsistente line-height
zu halten. Wenn irgendjemand Ideen hat, würde ich es lieben, sie zu hören.
bearbeiten 3:
Für meine eigene zukünftige Referenz und aus meiner eigenen Forschung, diese Tags sollten mit line-height: 1
so lange betrachtet werden, da sie inline angezeigt werden, zusammen mit anderem Standardtext:
abbr, acronym, b, big, cite, code, del, dfn, em, i, ins, kbd, q,
samp, small, strong, sub, sup, tt, var
Diese Elemente sind fragwürdig:
a, bdo, img, span
Tolle Infos! Was ist mit 'p * {Zeilenhöhe: 0; } 'oder besser noch vielleicht' p a, p code, p groß {line-height: 0; } '? Jetzt kommen wir irgendwohin. ';)' – Jeff
Follow-up zu meinem letzten Kommentar. Sei vorsichtig mit meinem Code oben. Wenn Sie zum Beispiel '
foo
' haben, wird die Zeilenhöhe zu Null berechnet, was wahrscheinlich nicht das ist, was Sie wollen. – Jeff