Hier ist ein UILabel, das "About" sagt. In iOS auf genau 17,7 eingestellt.
Darunter ein UIWebView, der auch "About" sagt. Auch mit CSS genau auf 17,7 eingestellt.
Sie stimmen nicht überein.
Wie behebt man das richtig?
Es ist seltsam, dass in Apples eigenem UIWebView die Größenbasis anders ist ?
Html zum Testen ...
%Vor%Das Verhalten ist auf dem Gerät oder Simulator identisch.
(Hinweis: hier habe ich gelernt, dass das Verhältnis vielleicht 72,0 / 96,0 ist.)
Wenn Sie eine 1: 1-Beziehung zwischen der Schriftgröße, die der UILabel
verwendet, und der Schriftgröße, die der UIWebView
verwendet (via CSS), möchten, müssen Sie px
anstelle von pt
verwenden Schriftgröße in Ihrem CSS.
Beende dieses Beispiel HTML / CSS:
%Vor% Wenn Sie eine UIWebView
und eine UILabel
zu Ihrer UIViewController
hinzufügen und den obigen HTML-Code in die UIWebView
laden und dieselbe Schriftart auf UILabel
setzen:
Sie erhalten folgende Ausgabe:
Ich glaube, Ihre Verwirrung lag daran, dass CSS pt ein typografischer Punkt ist (1/72 in), aber Apples iOS-Dokumentation verwendet "point" (z. B. UIFont.pointSize) als "virtuelles Pixel", was CSS px entspricht. Gemessen an @ joerns Antwort sieht es so aus, als ob UIWebView 1 css px = 1 ios virtual px verwendet. (Ich habe das nicht getestet.) In meinen Tests mit WKWebView sieht es jedoch so aus, als ob CSS px einem Gerätepixel entspricht. Also für WKWebView wollen Sie:
%Vor%Ja, es ist ein Problem mit der übergeordneten Schriftgröße:
Sie sollten immer die Schriftgröße für Körper 16px eingestellt (man kann es höher eingestellt, wenn eine größere Basis-Schriftart erforderlich ist, ist der Standard 16px).
Stellen Sie dann die Schriftgröße mit 16px als Basis ein.
%Vor%Wenn Sie sowohl der Körper und die h1 font-Größen den gleichen dann einfach stellen Sie den Körper font-size sein und nicht setzt die Schriftgröße des h1 (es wird den Körper font-size alle auf erben seine eigene ... aka ... Kaskadierung).
%Vor%Was Sie getan haben, ist, die Schriftgröße des Körpers auf einen Wert zu setzen ... dann setzen Sie die Schriftgröße h1 auf denselben Wert, das Problem ist, dass h1 die Schriftgröße vom Körper übernimmt und dann noch größer wird, wenn Sie weisen h1 eine Schriftgröße zu.
Ich hoffe, das macht Sinn und hilft.
Tags und Links css ios retina-display uiwebview