recherche
Maisoninterface Webtutoriel CSSPosition d'ancrage Quirks

Anchor Positioning Quirks

L'almanac CSS-Tricks possède désormais une couverture complète de la nouvelle API de positionnement d'ancrage, détaillant chaque propriété, fonction et règle. Ma plongée profonde récente dans ce module a révélé des bizarreries et des bogues potentiels intrigants, que je vais explorer ici pour vous sauver un gratte-ciel.

le bloc contenant du modèle modéré en coffre-fort (IMCB)

Bien que le bloc contenant des éléments statiques soit simple (la zone de contenu du parent), les éléments absolument positionnés introduisent la complexité. Leur bloc contenant est généralement la fenêtre ou l'ancêtre positionné le plus proche. Cependant, le bloc contenant en coffre-fort en insert (IMCB) ajoute une couche de nuance, particulièrement pertinente pour le positionnement de l'ancrage.

L'IMCB est défini dans la spécification comme le bloc contenant effectivement rétréci par les propriétés inset (top, right, bottom, left) de l'élément absolument positionné.

par exemple:

.absolute {
  position: absolute;
  top: 80px;
  right: 120px;
  bottom: 180px;
  left: 90px;
}

Ici, l'IMCB est plus petit que la fenêtre, réduit par les valeurs d'insertion spécifiées. Comprendre l'IMCB est crucial pour maîtriser le positionnement de l'ancrage, en particulier les propriétés position-area et position-try-order. position-area divise le bloc contenant en une grille, et l'IMCB définit la zone de positionnement dans cette grille. position-try-order utilise les dimensions IMCB pour déterminer le positionnement de secours. L'outil visuel d'UNA Kravets à https://www.php.cn/link/7e77e4a1b051ec0a510b48eec2f3a3c fournit une excellente visualisation.

Spécification par rapport à la mise en œuvre: une histoire d'évolution rapide

Alors que la spécification a servi de guide précieux, l'implémentation du navigateur réel a révélé des écarts. Le développement et le déploiement rapides du positionnement de l'ancrage (premier projet de juin 2023, version de Chrome 125) ont conduit à certaines incohérences initiales entre la spécification et le comportement du navigateur. Les modifications apportées après l'implémentation initiale du navigateur incluent:

  • inset-area renommé position-area: inset-area est obsolète, utilisez position-area.
  • position-try-options renommé position-try-fallbacks: utiliser position-try-fallbacks.
  • inset-area() Fonction supprimée: La fonction de wrapper n'est plus nécessaire pour position-try-fallbacks.
  • anchor(center) Simplification: Une syntaxe plus concise pour le centrage est maintenant disponible.
  • bogues: Plusieurs bogues existent, en particulier concernant le comportement position-area lorsqu'une ancre par défaut est absente et position-visibility comportement par défaut.

Considérations d'accessibilité

Alors que le positionnement de l'ancrage excelle pour les info-bulleurs et les popovers, l'utiliser à des fins purement décoratives (par exemple, les éléments de connexion avec les lignes) peuvent entraver l'accessibilité. Les lecteurs d'écran peuvent ne pas comprendre la relation entre les éléments liés visuellement mais sémantiquement non liés. L'utilisation d'attributs Aria comme aria-describedby et role est recommandé d'établir une relation sémantique claire, assurant l'accessibilité des technologies d'assistance.

Conclusion

La maîtrise du positionnement de l'ancrage nécessite de naviguer dans ses complexités. Alors que l'Almanac CSS-Tricks fournit des ressources précieuses, n'oubliez pas que l'API évolue, promettant d'autres opportunités d'apprentissage et des raffinements futurs potentiels.

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
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
Mécanique orbitale (ou comment j'ai optimisé une animation de clés CSS)Mécanique orbitale (ou comment j'ai optimisé une animation de clés CSS)May 09, 2025 am 09:57 AM

À quoi cela ressemble-t-il de refactor votre propre code? John Rhea sépare une vieille animation CSS qu'il a écrite et traverse le processus de réflexion pour l'optimiser.

Animations CSS: est-il difficile de les créer?Animations CSS: est-il difficile de les créer?May 09, 2025 am 12:03 AM

CSSANIMATIONSARENOTINÉMENT HAUTS BUTREQUIREPRACTICIT ENCRIPTION DES PROFESSIONS DESPROPERTIES ET TROUVEMENT

@KeyFrames CSS: les astuces les plus utilisées@KeyFrames CSS: les astuces les plus utiliséesMay 08, 2025 am 12:13 AM

@ KeyframeSispopulardUetOtsSversatity andpowerCreatingsMoothcSSanimations.KeyTrickSinclude: 1) DefiingsMoothTransitionsBetwean

Compteurs CSS: un guide complet de la numérotation automatiqueCompteurs CSS: un guide complet de la numérotation automatiqueMay 07, 2025 pm 03:45 PM

CSSCOUNTERSAREUSEUSTTOMAGAUTAMAMATALUMENTSINDWEBDESIGNS.1) Ils ont été des cas de contenu, des listitems et de la forme.

Ombres de défilement moderne à l'aide d'animations axées sur le défilementOmbres de défilement moderne à l'aide d'animations axées sur le défilementMay 07, 2025 am 10:34 AM

L'utilisation d'ombres de défilement, en particulier pour les appareils mobiles, est un peu de UX subtil que Chris a couvert auparavant. Geoff a couvert une approche plus récente qui utilise la propriété d'animation-timeline. Voici encore une autre façon.

Revisiter les cartes d'imageRevisiter les cartes d'imageMay 07, 2025 am 09:40 AM

Passons à travers un rafraîchissement rapide. Les cartes d'image datent jusqu'à HTML 3.2, où, d'abord, les cartes côté serveur, puis les cartes côté client ont défini les régions cliquables sur une image à l'aide de cartes et d'éléments de zone.

État des développeurs: une enquête pour chaque développeurÉtat des développeurs: une enquête pour chaque développeurMay 07, 2025 am 09:30 AM

L'enquête sur l'état des développeurs est désormais ouverte à la participation, et contrairement aux enquêtes précédentes, il couvre tout sauf le code: carrière, lieu de travail, mais aussi santé, passe-temps, etc. 

Qu'est-ce que CSS Grid?Qu'est-ce que CSS Grid?Apr 30, 2025 pm 03:21 PM

CSS Grid est un outil puissant pour créer des dispositions Web complexes et réactives. Il simplifie la conception, améliore l'accessibilité et offre plus de contrôle que les méthodes plus anciennes.

See all articles

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

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Navigateur d'examen sécurisé

Navigateur d'examen sécurisé

Safe Exam Browser est un environnement de navigation sécurisé permettant de passer des examens en ligne en toute sécurité. Ce logiciel transforme n'importe quel ordinateur en poste de travail sécurisé. Il contrôle l'accès à n'importe quel utilitaire et empêche les étudiants d'utiliser des ressources non autorisées.

SublimeText3 version Mac

SublimeText3 version Mac

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

mPDF

mPDF

mPDF est une bibliothèque PHP qui peut générer des fichiers PDF à partir de HTML encodé en UTF-8. L'auteur original, Ian Back, a écrit mPDF pour générer des fichiers PDF « à la volée » depuis son site Web et gérer différentes langues. Il est plus lent et produit des fichiers plus volumineux lors de l'utilisation de polices Unicode que les scripts originaux comme HTML2FPDF, mais prend en charge les styles CSS, etc. et présente de nombreuses améliorations. Prend en charge presque toutes les langues, y compris RTL (arabe et hébreu) ​​et CJK (chinois, japonais et coréen). Prend en charge les éléments imbriqués au niveau du bloc (tels que P, DIV),

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

Version Mac de WebStorm

Version Mac de WebStorm

Outils de développement JavaScript utiles