Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente |
prog:css [2024/10/06 17:39] – Ajout de "Border" root | prog:css [2024/12/23 11:33] (Version actuelle) – [Position] : précision sur "display: flex" root |
---|
===Id=== | ===Id=== |
| |
''#id'' : identifiant via ''id='' (identifiant unique)comme ''class'' sauf que les ''id'' sont uniques. Préfixer par un dièse. | ''#id'' : identifiant via ''id='' (identifiant unique) comme ''class'' sauf que les ''id'' sont uniques. Préfixer par un dièse. |
| |
===Pseudo-classe=== | ===Pseudo-classe=== |
| |
'':only-child'' | '':only-child'' |
| |
| '':first-of-type'' : seulement le premier élément. |
| |
* Cas dynamique | * Cas dynamique |
===Pseudo-élément=== | ===Pseudo-élément=== |
| |
Désigne une partie d'un élément. Préfixé par un '':''. Les navigateurs tolèrent aussi un seul '':''. | Désigne une partie d'un élément. Préfixé par un ''::''. Les navigateurs tolèrent aussi un seul '':''. |
| |
''::first-line'' : Première ligne (d'un paragraphe par exemple) dans l'affichage graphique. Les mots . | ''::first-line'' : Première ligne (d'un paragraphe par exemple) dans l'affichage graphique. Les mots . |
* ''unset'' : rend la valeur par défaut et annule également la valeur par défaut de la feuille de style. | * ''unset'' : rend la valeur par défaut et annule également la valeur par défaut de la feuille de style. |
| |
=====Mise en page===== | =====Le modèle de boite===== |
| |
====Le modèle de boite==== | |
| |
Une boite / box stocke des données dans un rectangle et est composée d'une marge, bordure et padding. | Une boite / box stocke des données dans un rectangle et est composée d'une marge, bordure et padding. |
{{:prog:css:box-model.png?544|}} | {{:prog:css:box-model.png?544|}} |
| |
===Position=== | ====Position==== |
| |
Les box peuvent être soit : | Les box peuvent être soit : |
| |
* comportement par défaut. | * comportement par défaut. |
* ''display: flex''. Ils ont donc une ligne dédiée mais tant que les boites se suivent, elles sont les unes a côté des autres. | * ''display: flex''. Ils ont donc une ligne dédiée mais tant que les boites se suivent, elles sont les unes a côté des autres. Elles peuvent être, soit horizontales, soit verticales en fonction de la valeur de ''flex-direction'' (''row'' (par défaut) / ''column'' / ''row-reverse'' / ''column-reverse''). |
* ''display: inline-flex''. Les boites ne sont pas dans une ligne dédiée et tant que les boites se suivent, elles sont les unes a côté des autres. Contrairement à ''inline'', les blocs n'ont pas une largeur de 100% mais s'adaptent au contenu. | * ''display: inline-flex''. Les boites ne sont pas dans une ligne dédiée et tant que les boites se suivent, elles sont les unes a côté des autres. Contrairement à ''inline'', les blocs n'ont pas une largeur de 100% mais s'adaptent au contenu. |
* "entre deux" (''display: inline-block''). Les boites ne sont pas sur une ligne dédiée mais ''height'' et ''width'' sont respectés. | * "entre deux" (''display: inline-block''). Les boites ne sont pas sur une ligne dédiée mais ''height'' et ''width'' sont respectés. |
</HTML> | | </HTML> | |
| |
===Dimension=== | ====Dimension==== |
| |
* Cas général | * Cas général |
} | } |
</code> | </code> |
| |
| * Propriétés logiques |
| |
| Il est possible de choisir l'orientation du texte (horizontal ou vertical) avec la propriété ''writing-mode''. Dans ce cas, la propriété ''width'' peut vouloir être remplacée par la valeur de ''height''. |
| |
| {{:prog:css:horizontal-tb.png?634|}} {{:prog:css:vertical-tb.png?406|}} |
| |
| Il faut alors remplacer ''width'' par ''inline-size'' et ''height'' par ''block-size''. |
| |
| Il est aussi possible de faire la même chose avec ''margin'', ''border'' et ''padding''. |
| |
| <code css> |
| margin-block-start: 20px; |
| padding-inline-end: 2em; |
| padding-block-start: 2px; |
| border-block-start: 5px solid pink; |
| border-inline-end: 10px dotted rebeccapurple; |
| border-block-end: 1em double orange; |
| border-inline-start: 1px solid black; |
| </code> |
| |
| * Scrollbar / ascenseur |
| |
| Si la dimension d'une boite est bloquée et qu'il y a plus de texte que la boite peut contenir, le texte va déborder. Le contrôle du débordement se fait via ''overflow'' / ''overflow-x'' / ''overflow-y'' (''visible'' : valeur par défaut, le débordement sera visible, ''hidden'' : tout ce qui déborde de la boite sera masqué (déconseillé), ''scroll'' : une scrollbar va apparaitre si besoin.) |
| |
=====Propriétés===== | =====Propriétés===== |