vertical-viewport-segments
Limited availability
Cette fonctionnalité n'est pas Compatible car elle ne fonctionne pas dans certains des navigateurs les plus utilisés.
La caractéristique média CSS vertical-viewport-segments permet de détecter si l'appareil possède un nombre spécifié de segments de zone d'affichage (viewport) disposés verticalement (de haut en bas).
En lien avec l'API Viewport Segments, la caractéristique vertical-viewport-segments permet de créer des conceptions réactives adaptées aux appareils multi-vues : des appareils dont l'écran est divisé en segments de zone d'affichage logiquement séparés, comme les appareils pliables ou à charnière.
Syntaxe
La caractéristique vertical-viewport-segments s'exprime comme une valeur entier supérieure ou égale à 1, représentant le nombre de segments verticaux de la zone d'affichage de l'appareil.
- La valeur sera
1pour :- Un appareil non pliable (par exemple, un smartphone ou une tablette à écran unique standard).
- Un appareil pliable qui est soit déplié, soit fermé (en posture d'appareil
continuous). - Un appareil à deux écrans à charnière ou un appareil pliable actuellement plié et orienté horizontalement, de sorte que les segments soient côte à côte.
- La valeur sera
2pour un appareil à deux écrans à charnière ou un appareil pliable actuellement plié (en posture d'appareilfolded) et orienté verticalement, de sorte que les segments soient l'un au-dessus de l'autre. - La valeur peut être supérieure à
2pour les appareils pliables comportant plus d'un pli.
Exemples
>Utilisation basique de vertical-viewport-segments
Dans cet extrait, on utilise une requête média vertical-viewport-segments pour gérer le cas des appareils pliables où les segments sont disposés de haut en bas.
On définit la hauteur du conteneur supérieur égale à la hauteur du segment supérieur (env(viewport-segment-height 0 0)), et celle du conteneur inférieur égale à la hauteur du segment inférieur (env(viewport-segment-height 0 1)).
Pour calculer la hauteur occupée par le pli entre les deux, on soustrait la position du bas du conteneur supérieur à la position du haut du conteneur inférieur (calc(env(viewport-segment-top 0 1) - env(viewport-segment-bottom 0 0));).
.wrapper {
height: 100%;
display: flex;
}
@media (vertical-viewport-segments: 2) {
.wrapper {
flex-direction: column;
}
.list-view {
height: env(viewport-segment-height 0 0);
}
.fold {
width: 100%;
height: calc(
env(viewport-segment-top 0 1) - env(viewport-segment-bottom 0 0)
);
background-color: black;
}
.detail-view {
height: env(viewport-segment-height 0 1);
}
}
Consultez notre démo de l'API Viewport Segments (angl.) pour un exemple complet (code source (angl.)). Vous pouvez aussi lire Utiliser l'API Viewport Segments pour une explication détaillée.
Spécifications
| Specification |
|---|
| Media Queries Level 5> # mf-vertical-viewport-segments> |
Compatibilité des navigateurs
Chargement…
Voir aussi
horizontal-viewport-segments- L'API Viewport Segments
- Expérimentation origin pour les API Foldable (angl.) sur developer.chrome.com