Supprimez WKWebView de la mise à l’échelle du contenu pour obtenir le même agrandissement qu’UIWebView

Problème

En utilisant WKWebView à la place d’ UIWebView , j’ai remarqué que le contenu de WKWebView était considérablement réduit par rapport à mon UIWebView . J’aimerais que WKWebView arrête de le faire et respecte mes valeurs CSS, comme le ferait UIWebView .

Le contexte

J’utilise les vues Web de mon application iOS native pour les contenus qui entrent dans les popovers sur un iPad où j’affiche du contenu informatif. C’est génial de pouvoir le donner aux utilisateurs de contenu et de design et de leur dire “déposez simplement du contenu HTML, en référençant le fichier CSS lié”.

Tout cela a bien fonctionné avec UIWebView .

Mais les popovers sont souvent assez compacts.

Ce que je ressens

Dans mes pop-ups étroits, le contenu est réduit comme si mon contenu consistait à miniaturiser une page Web complète. Je peux voir que WKWebView était principalement destiné aux personnes qui créaient des navigateurs alternatifs sur iOS ou construisaient des applications hybrides, où la WKWebView est essentiellement destinée à prendre le contrôle de l’écran.

Le facteur de grossissement dans WKWebView n’est pas quelque chose que l’on peut définir. Bien sûr, l’utilisateur peut zoomer, mais cela va à l’encontre du but. Je ne cherche pas un zoom dans la fenêtre d’affichage; Je cherche tout le contenu à adapter et le retour à la ligne comme avec UIWebView.

Avec WKWebView, dans le simulateur, je verrai la taille que je veux si je remonte la taille de mon corps à 50px au lieu de 14px. Cependant, ce code n’aide même pas sur l’appareil, donc gonfler mes tailles CSS n’est pas non plus une option!

Quel est le problème avec UIWebView?

Eh bien, rien vraiment. Ce n’est pas (encore) obsolète dans iOS8, peut-être que b / c est toujours utile, comme je le vois. J’ai toutefois remarqué que WKWebView était rapide. Et j’ai vu des spéculations que l’écriture est sur le mur pour UIWebView. J’ai pensé: “Pourquoi ne pas adopter l’API plus moderne dans iOS8 maintenant?”

Donc, je continue à utiliser UIWebView pour le moment, mais j’aimerais passer à WKWebView si je pouvais le faire respecter mon dimensionnement CSS.

Voici mon CSS original que UIWebView rend bien, mais que WKWebView dans un popover rendra dans de très petites fonts:

 body { font-family: "HelveticaNeue"; font-size: 15px; line-height: 17px; color: #000000; } h1 { font-family: "HelveticaNeue-Bold"; font-size: 18px; line-height: 20px; color: #000000; } h2 { font-family: "HelveticaNeue-Bold"; font-size: 16px; line-height: 18px; color: #000000; } 

J’ai eu le même problème. Je devais juste mettre

  

dans mon bloc d’en-tête et cela l’a résolu pour moi. On dirait que WKWebView se comporte plus comme Mobile Safari qu’un UIWebView , vous devez donc définir la fenêtre si vous voulez contrôler le redimensionnement ou le dimensionnement général.