Maison interface Web uni-app les polices et les icônes Uniapp ne sont pas horizontales

les polices et les icônes Uniapp ne sont pas horizontales

May 22, 2023 am 09:18 AM

Récemment, lors du développement d'une application Uniapp, j'ai rencontré un problème étrange, c'est-à-dire que les polices et les icônes ne s'affichent pas horizontalement sur certains appareils. Ce problème m'a beaucoup dérangé car il semblait normal sur mon appareil mais il y avait des problèmes sur d'autres appareils. Après plusieurs jours de recherche et de débogage, j'ai enfin trouvé la cause et la solution.

Description du problème

Tout d'abord, examinons les performances de ce problème. Sur mon appareil de développement, comme le montre l'image ci-dessous, les polices et les icônes s'affichent normalement sans aucun problème.

les polices et les icônes Uniapp ne sont pas horizontales

Cependant, lorsque j'ai installé l'application sur d'autres appareils Android, quelque chose s'est mal passé. Comme le montre l'image ci-dessous, vous pouvez voir que ni la police ni l'icône ne sont horizontales. Le bas de la police est incliné vers la gauche et le bas de l'icône est incliné vers la droite.

les polices et les icônes Uniapp ne sont pas horizontales

L'émergence de ce problème a affecté l'esthétique globale de l'application et causera également de gros problèmes pour certaines conceptions d'interface utilisateur qui nécessitent une mise en page fine.

Analyse du problème

Ensuite, analysons la cause de ce problème. Après mon débogage et mes recherches, j'ai découvert que ce problème est principalement dû à la résolution et à la densité de pixels de l'appareil.

Sur mon propre appareil, la résolution est de 1080x1920 et la densité de pixels est de 440 dpi. Sur d'autres appareils de test, la résolution et la densité de pixels varient. Étant donné que les polices et les icônes sont affichées en fonction des pixels, la même taille de police et la même taille d'icône apparaîtront dans différentes tailles sur les appareils avec des résolutions et des densités de pixels différentes. De plus, différents points d’ancrage des polices et des icônes entraîneront également des écarts dans leur alignement inférieur.

Solution

Ensuite, discutons de la façon de résoudre ce problème. Après mes recherches et explorations, j’ai résumé les idées de solutions suivantes.

1. Utiliser des icônes vectorielles

Les icônes vectorielles sont des icônes basées sur des graphiques de description numérique. Elles sont différentes des icônes bitmap et peuvent maintenir la clarté et la cohérence quelle que soit la résolution et la densité de pixels. L'utilisation d'icônes vectorielles évite les problèmes de taille des icônes et d'écart de position causés par différentes résolutions et densités de pixels.

Pour utiliser des icônes vectorielles dans Uniapp, vous devez utiliser une bibliothèque tierce (telle que fontawesome, ionicons, etc. En introduisant le fichier d'icône dans la bibliothèque, l'icône correspondante peut être affichée sur la page en utilisant son correspondant). nom de classe. Pour une utilisation spécifique, veuillez vous référer à la documentation des bibliothèques tierces concernées.

2. Utiliser la mise en page flexible

La mise en page flexible est une nouvelle méthode de mise en page dans CSS3, qui permet aux étiquettes du conteneur d'ajuster de manière flexible la taille, l'espacement et la position, résolvant ainsi les problèmes de composition causés par différentes résolutions et densités de pixels. Uniapp prend également en charge l'utilisation de la mise en page flexible. Vous pouvez définir le mode de mise en page du conteneur parent sur flex, et la taille et la position des étiquettes enfants peuvent être obtenues en définissant leurs propriétés flex.

3. Utilisez des unités de pixels

Dans Uniapp, l'unité par défaut des étiquettes est le rpx (responsive pixel), qui est une unité adaptative en fonction de la densité de pixels de l'appareil, mais dans certains cas, utilisez des unités de pixels (px ) sera plus précis et fiable. Étant donné que l'unité de pixels n'est pas affectée par la densité de pixels de l'appareil, vous pouvez éviter les problèmes de typographie sur les appareils ayant des résolutions et des densités de pixels différentes.

Conclusion

Ce qui précède est mon analyse et ma solution au problème des polices et des icônes inégales dans les applications Uniapp. Après plusieurs jours d'efforts, j'ai finalement trouvé un moyen de résoudre ce problème et je l'ai appliqué avec succès à mon application. Mon application peut désormais afficher une belle typographie sur divers appareils. J'espère que cet article pourra aider d'autres développeurs rencontrant le même problème.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

Repo: Comment relancer ses coéquipiers
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
4 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment gérer le stockage local à Uni-App? Comment gérer le stockage local à Uni-App? Mar 11, 2025 pm 07:12 PM

Cet article détaille les API de stockage local d'Uni-App (Uni.SetStorageSync (), Uni.GetStoragesYnc (), et leurs homologues asynchrones), mettant l'accent sur les meilleures pratiques telles que l'utilisation de clés descriptives, la limitation de la taille des données et la gestion de l'analyse JSON. Ça souligne que lo

Comment renommer les fichiers de téléchargement UNIAPP Comment renommer les fichiers de téléchargement UNIAPP Mar 04, 2025 pm 03:43 PM

Cet article détaille les solutions de contournement pour le renommer des fichiers téléchargés dans UNIAPP, manquant de support API direct. Android / iOS nécessite des plugins natifs pour le changement de nom post-téléchargement, tandis que les solutions H5 se limitent à suggérer des noms de fichiers. Le processus implique le tempor

Comment gérer l'encodage des fichiers avec UniApp Download Comment gérer l'encodage des fichiers avec UniApp Download Mar 04, 2025 pm 03:32 PM

Cet article aborde les problèmes d'encodage des fichiers dans les téléchargements UNIAPP. Il souligne l'importance des en-têtes de type contenu côté serveur et l'utilisation de TextDecoder de JavaScript pour le décodage côté client basé sur ces en-têtes. Solutions pour un problème d'encodage commun

Comment gérer l'état à Uni-App à l'aide de Vuex ou PINIA? Comment gérer l'état à Uni-App à l'aide de Vuex ou PINIA? Mar 11, 2025 pm 07:08 PM

Cet article compare Vuex et PINIA pour la gestion de l'État à Uni-App. Il détaille leurs fonctionnalités, leur implémentation et leurs meilleures pratiques, mettant en évidence la simplicité de Pinia contre la structure de Vuex. Le choix dépend de la complexité du projet, avec Pinia Suita

Comment faire des demandes d'API et gérer les données dans Uni-App? Comment faire des demandes d'API et gérer les données dans Uni-App? Mar 11, 2025 pm 07:09 PM

Cet article détaille la fabrication et la sécurisation des demandes d'API dans Uni-App à l'aide de Uni.Request ou Axios. Il couvre la gestion des réponses JSON, les meilleures pratiques de sécurité (HTTPS, authentification, validation des entrées), dépannage des échecs (problèmes de réseau, CORS, S

Comment utiliser les API de géolocalisation Uni-App? Comment utiliser les API de géolocalisation Uni-App? Mar 11, 2025 pm 07:14 PM

Cet article détaille les API de géolocalisation d'Uni-App, en se concentrant sur Uni.getLocation (). Il traite des pièges communs comme des systèmes de coordonnées incorrects (GCJ02 vs WGS84) et des problèmes d'autorisation. Améliorer la précision de l'emplacement via des lectures en moyenne et une manipulation

Comment utiliser les API de partage social de l'Uni-App? Comment utiliser les API de partage social de l'Uni-App? Mar 13, 2025 pm 06:30 PM

L'article détaille comment intégrer le partage social dans les projets Uni-App à l'aide de l'API Uni.share, couvrant la configuration, la configuration et les tests sur des plateformes comme WeChat et Weibo.

Comment utiliser la fonction Easycom d'Uni-App pour l'enregistrement des composants automatiques? Comment utiliser la fonction Easycom d'Uni-App pour l'enregistrement des composants automatiques? Mar 11, 2025 pm 07:11 PM

Cet article explique la fonctionnalité Easycom d'Uni-App, l'automatisation de l'enregistrement des composants. Il détaille la configuration, y compris Autoscan et la cartographie des composants personnalisés, mettant en évidence des avantages tels que la binelle réduite, la vitesse améliorée et la lisibilité améliorée.

See all articles