En CSS, les propriétés logiques permettent aux développeurs de définir des styles basés sur la structure logique d'une page Web plutôt que sur la présentation physique. Cela signifie que nous pouvons appliquer CSS en fonction de la direction du texte ou du flux du contenu.
Utilisez principalement des attributs logiques pour définir les marges, le remplissage et les bordures des éléments HTML. Il contient différentes variantes de propriétés de marge, de remplissage et de bordure.
Les propriétés logiques peuvent être définies en fonction des dimensions au niveau du bloc et en ligne.
Dimension du bloc - La dimension du bloc représente la direction perpendiculaire du flux de contenu. Par exemple, en anglais, la direction du texte est de gauche à droite. Ainsi, les dimensions du bloc gèrent le haut et le bas de l'élément.
- Les dimensions en ligne représentent la même orientation que l'orientation du contenu ou du texte. Pour l'anglais, gauche et droite sont des dimensions en ligne.
- Il définit les bordures supérieure et inférieure.
− Définissez les bordures gauche et droite.
- Il définit la bordure supérieure.
- Il définit la bordure inférieure.
- Il définit les marges gauche et droite.
- Il définit le rembourrage gauche et droit.
- Il définit le remplissage gauche.
- Il définit le rembourrage inférieur.
- Il définit la largeur de la bordure droite.
- Il définit le style de la bordure supérieure.
En observant la fonctionnalité des propriétés ci-dessus, la première question qui nous vient à l'esprit est de savoir si nous pouvons utiliser les propriétés CSS normales pour obtenir le même style et pourquoi nous devrions utiliser des propriétés logiques. Voici vos réponses.
margin: 0 auto; or margin-left: auto; margin-right: auto; or margin-inline: auto;
Les utilisateurs peuvent suivre la syntaxe ci-dessous pour utiliser les propriétés logiques en CSS.
padding-block-start: value; margin-inline-end: value;
Exemple 1 (propriétés logiques de marge et de remplissage)
Dans l'exemple ci-dessous, nous avons créé deux éléments div et ajouté du texte à l'intérieur. En CSS, nous avons utilisé les propriétés CSS logiques "padding-block-start", "padding-inline-start" et "margin-block-end" pour définir le remplissage supérieur et gauche et la marge inférieure du premier div.
<html> <head> <style> .text { padding-block-start: 20px; padding-inline-start: 30px; margin-block-end: 50px; color: green; background-color: red; width: 300px; font-size: 2rem; } .text1 { width: 300px; font-size: 2rem; padding-block-start: 20px; padding-inline-start: 10px; margin-inline-end: 50px; color: blue; background-color: yellow; } </style> </head> <body> <h3> Using the <i> margins and paddings logical properties </i> in CSS </h3> <div class = "text"> This is a text. </div> <div class = "text1"> This is another text div element. </div> </body> </html>
Dans l'exemple ci-dessous, nous avons démontré les propriétés CSS logiques liées à la bordure. Nous avons utilisé le 'border-block-start' pour appliquer la bordure supérieure et le 'border-block-end' pour appliquer la bordure inférieure. nous avons utilisé le 'border-inline-start' pour appliquer la bordure gauche et 'border-inline-end' pour appliquer la bordure droite.
<html> <head> <style> .sample { border-block-start: 3px dotted blue; border-block-end: 5px solid green; border-inline-start: 10px double red; border-inline-end: 5px groove yellow; padding: 10px; width: 300px; height: 200px; } .left {color: red;} .right {color: yellow;} .top {color: blue;} .bottom {color: green;} </style> </head> <body> <h2> Using the <i> Logical border </i> properties in CSS </h2> <div class = "sample"> Observe the border of the div. <p class = "left"> border inline start </p> <p class = "right"> border inline end </p> <p class = "top"> border block start </p> <p class = "bottom"> border block end </p> </div> </body> </html>
se traduit par :
Exemple 3<html> <head> <style> .container { display: flex; flex-direction: row; justify-content: space-between; padding-inline: 40px; width: 500px; background-color: bisque; font-size: 2rem; } .item {flex: 1;} </style> </head> <body> <h3> Using the <i> margin-inline property </i> to set the inline margin </h3> <div class = "container"> <div class = "item"> First </div> <div class = "item"> second </div> <div class = "item"> Third </div> </div> </body> </html>
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!