web-dev-qa-db-fra.com

requêtes multimédia sur iPhone X/8/8 Plus CSS

Quelles sont les requêtes multimédia CSS correspondant aux nouveaux appareils Apple? Je dois définir le background-color de la body pour changer la couleur de fond de la zone de sécurité du X.

51
nathan

iPhone X

@media only screen 
    and (device-width : 375px) 
    and (device-height : 812px) 
    and (-webkit-device-pixel-ratio : 3) { }

iPhone 8

@media only screen 
    and (device-width : 375px) 
    and (device-height : 667px) 
    and (-webkit-device-pixel-ratio : 2) { }

iPhone 8 Plus

@media only screen 
    and (device-width : 414px) 
    and (device-height : 736px) 
    and (-webkit-device-pixel-ratio : 3) { }


iPhone 6 +/6s +/7 +/8 + partagent les mêmes tailles, tout comme l’iPhone 7/8.


Vous recherchez une orientation spécifique?

Portrait

Ajoutez la règle suivante:

    and (orientation : portrait) 

Paysage

Ajoutez la règle suivante:

    and (orientation : landscape) 



Références:

101
nathan

Voici certaines des requêtes multimédia suivantes pour les iphones. Voici le lien de référence https://www.paintcodeapp.com/news/ultimate-guide-to-iphone-resolutions

    /* iphone 3 */
    @media only screen and (min-device-width: 320px) and (max-device-height: 480px) and (-webkit-device-pixel-ratio: 1) { }

    /* iphone 4 */
    @media only screen and (min-device-width: 320px) and (max-device-height: 480px) and (-webkit-device-pixel-ratio: 2) { }

    /* iphone 5 */
    @media only screen and (min-device-width: 320px) and (max-device-height: 568px) and (-webkit-device-pixel-ratio: 2) { }

    /* iphone 6, 6s, 7, 8 */
    @media only screen and (min-device-width: 375px) and (max-device-height: 667px) and (-webkit-device-pixel-ratio: 2) { }

    /* iphone 6+, 6s+, 7+, 8+ */
    @media only screen and (min-device-width: 414px) and (max-device-height: 736px) and (-webkit-device-pixel-ratio: 3) { }

    /* iphone X */
    @media only screen and (min-device-width: 375px) and (max-device-height: 812px) and (-webkit-device-pixel-ratio: 3) { }

    /* iphone XR */
    @media only screen and (min-device-width : 414px) and (max-device-height : 896px) and (-webkit-device-pixel-ratio : 2) { }

   /* iphone XS */
    @media only screen and (min-device-width : 375px) and (max-device-height : 812px) and (-webkit-device-pixel-ratio : 3) { }

   /* iphone XS Max */
    @media only screen and (min-device-width : 414px) and (max-device-height : 896px) and (-webkit-device-pixel-ratio : 3) { }
41
Yash Vekaria

J'ai remarqué que les réponses ici utilisent: device-width, device-height, min-device-width, min-device-height, max-device-width, max-device-height.

Merci de ne pas les utiliser car ils sont obsolètes. voir MDN pour référence . Utilisez plutôt les codes min-width, max-width et ainsi de suite. Pour plus de sécurité, vous pouvez définir les valeurs min et max au même nombre de px .Par exemple:

iPhone X

@media only screen 
    and (width : 375px) 
    and (height : 635px)
    and (orientation : portrait)  
    and (-webkit-device-pixel-ratio : 3) { }

Vous remarquerez peut-être aussi que j'utilise 635px pour la hauteur. Essayez vous-même, la hauteur de la fenêtre est de 635 pixels. exécutez le simulateur iOS pour iPhone X et dans l'inspecteur Web Safari effectuez window.innerHeight. Voici quelques liens utiles sur ce sujet:

6
Sam Sedighian

Il semble que la méthode la plus précise (et transparente) d’ajouter le rembourrage pour iPhone X/8 en utilisant env () ...

padding: env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);

Voici un lien décrivant ceci:

https://css-tricks.com/the-notch-and-css/

0
Wasif Ibrahim