


Pourquoi une division à marge négative semble-t-elle glisser *entre* le contenu et l'arrière-plan d'une autre division ?
Contenu superposé par éléments superposés : comprendre le puzzle
Introduction
Dans ce contexte, nous avons deux divs sans aucun style complexe (simplement couleur d'arrière-plan). Nous manipulons le deuxième div pour chevaucher le premier en appliquant une marge supérieure négative. Cependant, au lieu de voir un élément chevaucher complètement l'autre, nous trouvons le deuxième div glissant entre le contenu et l'arrière-plan du premier div, présentant un comportement inattendu.
L'ordre de la peinture
Pour comprendre ce comportement, nous devons nous plonger dans les subtilités de l'ordre de peinture dans les navigateurs. L'ordre de peinture des éléments dans un contexte d'empilement suit une séquence prédéfinie :
- Couleur de fond de l'élément, même s'il s'agit de l'élément racine.
- Image de fond de l'élément, même si c'est l'élément racine.
- Contenu de l'élément, tel que du texte et des images, peint de bas en haut.
- Arrière-plan et bordure des éléments enfants.
Expliquer le chevauchement
Dans notre exemple, lorsque le deuxième div chevauche le premier, la séquence de peinture suivante se produit :
- La couleur d'arrière-plan du deuxième div est peinte sur l'arrière-plan du premier div.
- Contenu de le premier div est peint.
- Le contenu du deuxième div est peint au-dessus du contenu du premier div.
Étant donné que le contenu du premier div est peint avant l'arrière-plan du deuxième div, le texte semble être positionné au-dessus du fond vert, créant l'illusion que le deuxième div glisse entre eux.
Changer le comportement
Bien que l'ordre de peinture par défaut puisse conduire à de telles situations, il est possible de modifier le comportement en définissant l'opacité de l'élément qui se chevauche sur un valeur inférieure à 1. Cela déclenche l'étape de peinture de l'opacité avant l'étape de peinture du contenu, garantissant que l'arrière-plan de l'élément superposé apparaît sous son contenu.
Dans notre exemple, l'ajout d'opacité : 0,9999 au deuxième div conduit au comportement attendu, où le fond vert recouvre complètement le contenu du premier div.
Référence
Pour une explication détaillée de l'ordre des peintures CSS, reportez-vous au site officiel du W3C. documentation :
https://www.w3.org/TR/css-backgrounds-3/#box-painting
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!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

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 !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

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

Sujets chauds

L'autre jour, j'ai repéré ce morceau particulièrement charmant sur le site Web de Corey Ginnivan où une collection de cartes se cassent les uns sur les autres pendant que vous faites défiler.

Je vois que Google Fonts a déployé un nouveau design (tweet). Comparé à la dernière grande refonte, cela semble beaucoup plus itératif. Je peux à peine faire la différence

Avez-vous déjà eu besoin d'un compte à rebours sur un projet? Pour quelque chose comme ça, il pourrait être naturel d'atteindre un plugin, mais c'est en fait beaucoup plus

Questions sur les zones de slash violet dans les dispositions flexibles Lorsque vous utilisez des dispositions flexibles, vous pouvez rencontrer des phénomènes déroutants, comme dans les outils du développeur (D ...

Lorsque le nombre d'éléments n'est pas fixé, comment sélectionner le premier élément enfant du nom de classe spécifié via CSS. Lors du traitement de la structure HTML, vous rencontrez souvent différents éléments ...

Tout ce que vous avez toujours voulu savoir sur les attributs de données dans HTML, CSS et JavaScript.

Au début d'un nouveau projet, la compilation SASS se produit en un clin d'œil. Cela se sent bien, surtout quand il est associé à BrowSersync, qui recharge

Comment implémenter des fenêtres dans le développement frontal ...
