Quel effet les différents systèmes d’exploitation peuvent-ils avoir sur l’affichage des pages Web?

J’ai vu beaucoup d’utilisateurs sur ce site fournir des spécifications de système d’exploitation lorsqu’ils décrivaient des bogues de développement Web et j’ai vu quelques exemples de choses fonctionnant sur un système d’exploitation, mais pas sur un autre.

Existe-t-il une différence réelle dans ce qui est traité par les IE6 sur différentes versions de Windows? Ou exactement la même version de Firefox sur Ubuntu que Mac?

C’est peut-être une question noob, mais je suis vraiment curieux.

Il y a essentiellement 4 catégories de bogues inter-systèmes qui peuvent survenir sur le site Web (involontairement: ignorer des choses comme le développeur Web reniflant l’agent utilisateur et les résultats non reconnus, ou utiliser un plug-in qui ne peut fonctionner que sur Silverlight). . Ordonné dans le plus commun au moins commun, de mon expérience personnelle

  1. Hypothèses sur les fonts et le crénage – Si le système d’exploitation de l’utilisateur ne correspond pas au vôtre et que vous spécifiez une police dont le leur ne possède pas la leur, le texte n’aura pas exactement la même longueur et la même hauteur taille du point (la minuscule ‘m’ doit correspondre, mais tous les autres caractères peuvent différer, comme la hauteur des majuscules). Cela peut causer des ravages sur les mises en page de taille fixe, en particulier avec des titres dont la longueur ne devrait pas dépasser une ligne. Dernièrement, cela peut être atténué en achetant une “webfont” (généralement à la fois l’ancienne IE et la nouvelle police Web standard moderne) et en l’utilisant dans votre CSS, hébergeant la police à télécharger par l’utilisateur. Cela peut produire un “flash” au fur et à mesure que le rendu y est transféré une fois téléchargé, vous devez donc spécifier un long temps de mise en cache.
  2. Hypothèses concernant les éléments de formulaire – Étant donné que ces éléments HTML sont créés directement par le système d’exploitation, et non par le navigateur, même pour un même navigateur, ils peuvent avoir une taille et des comportements différents entre les systèmes d’exploitation. Styliser ces éléments réduit la variabilité, mais certains éléments du formulaire (comme le ) ne peuvent pas être stylés. Donnez-leur simplement un grand tampon dans votre mise en page.
  3. Plugins Buggy – Même si le plugin existe sur tous les systèmes d’exploitation, comme Flash, généralement, ils fonctionnent mieux sous Windows, puis Linux et Mac se battent pour la deuxième place (généralement plus d’efforts sur le port Mac, mais sous Linux soyez des guides de wiki pour améliorer le fonctionnement, et les distro packagers peuvent utiliser ces astuces pour installer automatiquement le plugin pour vous). La seule solution que je connaisse est, si vous êtes un développeur Windows, d’avoir une image VirtualBox d’une dissortingbution Linux comme Ubuntu ou Fedora sur laquelle vous testez votre site, et de voir la performance du plugin lorsque vous ajoutez toutes vos cloches et siffle, puis supposons que les Mac sont à peu près les mêmes performances.
  4. Bogues réels dans le moteur de rendu HTML – Ils peuvent se produire et, à mesure que le développement du navigateur augmente, l’écart de parité entre les fonctionnalités et les bogues s’élargit entre les plates-formes. En règle générale, le système d’exploitation «natif» du navigateur fait de son mieux, suivi de la plate-forme la plus utilisée par la suite. Je vois rarement des régressions, donc une fois que quelque chose fonctionne sur tous les systèmes d’exploitation pour un navigateur, cela rest fondamentalement comme ça. Vous devez faire quelque chose de vraiment spécial pour y arriver.

Il y a 10 ans, cette réponse aurait été un retentissant oui. Par exemple, IE5 sur Mac était une base de code très différente de Windows et rendait les choses un peu différentes. Mais, avec les navigateurs modernes, ce n’est généralement pas le cas.

Il y a encore quelques différences mineures. Par exemple, safari sur le Mac (pas sûr de FF) rend avec des contrôles de style Mac, qui peuvent avoir des tailles, des bordures, des tailles de police, etc. différentes. Cela peut causer des problèmes de rendu subtils entre les plates-formes à moins qu’un seul pixel puisse gâcher votre conception.

Les fonts sont un autre problème, car différentes fonts existent sur différents systèmes, et elles ont des mesures différentes.

Le rendu Javascript peut être un problème entre les navigateurs, mais généralement pas la même version sur différents systèmes d’exploitation.

La dernière mode est l’accélération matérielle, qui peut être différente entre les systèmes d’exploitation, mais devrait généralement se traduire par une rapidité de rendu des différences.

Tout dépend du fabricant du navigateur, mais d’après mon expérience, ils sont assez proches de la même plate-forme croisée, à part quelques trucs d’interface utilisateur. Ubuntu est probablement le système d’exploitation auquel ils accordent le moins d’attention et Firefox, par exemple, fonctionne exactement de la même manière sous Windows et Ubuntu.

Le développement Web, en termes de système d’exploitation exécuté par votre serveur, pose un problème et n’est pas inter-plateforme lorsqu’il s’agit d’interagir avec le système de fichiers, mais ce n’est pas vraiment votre question.