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.
@media only screen
and (device-width : 375px)
and (device-height : 812px)
and (-webkit-device-pixel-ratio : 3) { }
@media only screen
and (device-width : 375px)
and (device-height : 667px)
and (-webkit-device-pixel-ratio : 2) { }
@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:
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) { }
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:
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: