CSS - Redimensionnement : Donner aux utilisateurs le contrôle des dimensions des éléments

Salut à toi, futurs développeurs web ! Aujourd'hui, nous plongeons dans une propriété CSS passionnante qui donne le pouvoir de dimensionner directement les éléments entre les mains de vos visiteurs de site web. Bienvenue dans le monde du resize !

CSS - Resize

Qu'est-ce que la propriété CSS Resize ?

Avant de rentrer dans les détails, posons une simple question : Avez-vous déjà remarqué ces petites poignées dans le coin inférieur droit de certains textareas qui vous permettent de les redimensionner ? C'est la propriété resize en action !

La propriété resize en CSS permet aux éléments d'être redimensionnables par l'utilisateur. C'est comme donner à vos utilisateurs une mini poignée de traction pour ajuster la taille de certains éléments sur votre page web. Génial, non ?

Applications

Vous vous demandez peut-être : "Puis-je rendre tout sur ma page web redimensionnable ?" Eh bien, pas tout à fait. La propriété resize s'applique principalement aux éléments qui ont overflow réglé sur quelque chose d'autre que visible. Cela inclut typiquement :

  • Les éléments <textarea>
  • Les éléments avec overflow: auto ou overflow: scroll

Mais ne vous inquiétez pas, nous explorerons comment rendre d'autres éléments redimensionnables !

Syntaxe

Reprenons la syntaxe pour utiliser la propriété resize :

élément {
resize: valeur;
}

Simple, n'est-ce pas ? Maintenant, explorons les différents valeurs que nous pouvons utiliser.

Valeurs CSS Resize

Voici un tableau récapitulatif de toutes les valeurs possibles pour la propriété resize :

Valeur Description
none L'élément n'est pas redimensionnable
vertical L'élément est redimensionnable verticalement
horizontal L'élément est redimensionnable horizontalement
both L'élément est redimensionnable à la fois verticalement et horizontalement
inherit Hérite de la valeur de redimensionnement de l'élément parent

Maintenant, plongeons dans chacune de ces valeurs avec des exemples succulents !

Valeur CSS resize - none

textarea {
resize: none;
}

Ce code dit au navigateur : "Eh, ne laissez personne redimensionner ce textarea !" C'est comme mettre un panneau "Ne pas toucher" sur votre élément.

Valeur CSS resize - vertical

textarea {
resize: vertical;
height: 100px;
width: 200px;
}

Avec ce code, votre textarea démarre à une hauteur de 100px et une largeur de 200px, mais les utilisateurs peuvent le faire glisser pour le rendre plus haut ou plus bas. C'est comme avoir un ascenseur pour votre texte !

Valeur CSS resize - horizontal

div {
resize: horizontal;
overflow: auto;
width: 200px;
height: 100px;
border: 2px solid bleu;
}

Ici, nous appliquons resize: horizontal à un div. Souvenez-vous, pour les éléments non-textarea, nous devons setter overflow à quelque chose d'autre que visible. Les utilisateurs peuvent maintenant ajuster la largeur de ce div, comme étirer un élastique !

Valeur CSS resize - both

textarea {
resize: both;
min-height: 100px;
max-height: 300px;
min-width: 200px;
max-width: 400px;
}

C'est la flexibilité ultime ! Les utilisateurs peuvent redimensionner le textarea dans n'importe quelle direction, mais nous avons fixé des limites pour empêcher qu'il ne devienne trop petit ou trop grand. C'est comme donner à vos utilisateurs un bac à sable pour jouer, mais avec des clôtures pour garder les choses sous contrôle.

Valeur CSS resize - inherit

.parent {
resize: both;
overflow: auto;
}

.child {
resize: inherit;
}

Ici, l'élément enfant héritera du comportement de redimensionnement de son parent. C'est comme transmettre un héritage familial, mais pour le redimensionnement !

Éléments CSS resize - Arbitraires

Maintenant, soyons un peu aventuriers. Que faire si nous voulons rendre un div régulier redimensionnable ?

.resizable-div {
width: 200px;
height: 100px;
padding: 10px;
border: 2px solid #00f;
overflow: auto;
resize: both;
}
<div class="resizable-div">
<p>Je suis un div redimensionnable ! Essayez de me redimensionner !</p>
</div>

En setting overflow: auto et resize: both, nous avons transformé un div ordinaire en un terrain de jeu redimensionnable ! C'est comme donner des superpouvoirs à vos éléments HTML.

Conclusion

Et voilà, les amis ! Nous avons exploré le merveilleux monde de la propriété CSS resize. Du verrouillage des éléments avec resize: none à la création de composants pleinement flexibles avec resize: both, vous avez maintenant le pouvoir de contrôler comment les utilisateurs interagissent avec la taille des éléments sur votre page web.

Souvenez-vous, avec un grand pouvoir vient une grande responsabilité. Utilisez la propriété resize avec sagesse pour améliorer l'expérience utilisateur, pas pour confondre ou frustrer vos visiteurs.

Alors que vous continuez votre voyage dans le développement web, continuez à expérimenter avec différentes propriétés CSS. Qui sait ? Vous pourriez découvrir un nouveau tour de magie à ajouter à votre boîte à outils de codage !

Bonne programmation, et que vos éléments soient toujours parfaitement dimensionnés !

Credits: Image by storyset