Comment puis-je empêcher la zone de texte de s'étirer au-delà de son élément DIV parent?
J'ai cette zone de texte à l'intérieur d'une table qui se trouve à l'intérieur d'un DIV et il semble que la table entière s'étire hors de ses limites.
Vous pouvez voir un exemple de la même situation même dans un cas plus simple, en mettant simplement une zone de texte à l'intérieur d'un div (comme ce qui est utilisé ici sur www.stackoverflow.com)
Vous pouvez voir sur les images ci-dessous que la zone de texte peut s'étirer au-delà de la taille de son parent? Comment éviter cela?
Je suis un peu nouveau dans CSS donc je ne sais pas vraiment quels attributs CSS dois-je utiliser. J'ai essayé plusieurs comme l' affichage et le débordement . Mais ils ne semblent pas faire l'affaire. Y a-t-il autre chose que j'aurais pu manquer?
MISE À JOUR: HTML
CSS
textarea {
max-width: 50%;
}
#container {
width: 80%;
border: 1px solid red;
}
#cont2{
width: 60%;
border: 1px solid blue;
}
Si vous mettez ce code dans http://jsfiddle.net , vous verrez qu'ils agissent différemment. Bien que la zone de texte soit limitée au pourcentage déclaré dans son style css, il est toujours possible de l'amener à faire en sorte que sa table parente soit aussi grande qu'elle le souhaite, puis vous pouvez voir qu'elle déborde sur sa bordure parente. Des idées sur la façon de résoudre ce problème?
la source
Réponses:
Pour désactiver complètement le redimensionnement:
Pour autoriser uniquement le redimensionnement vertical:
Pour autoriser uniquement le redimensionnement horizontal:
Ou vous pouvez limiter la taille:
Pour limiter la taille à la largeur et / ou à la hauteur des parents:
la source
Le contrôle de redimensionnement Textarea est disponible via la propriété de redimensionnement CSS3 :
Valeurs autorisées explicites:
none
(désactive le redimensionnement de la zone de texte)both
,vertical
ethorizontal
.Notez que dans Chrome, Firefox et Safari, la valeur par défaut est
both
.Si vous voulez limiter la largeur et la hauteur de l'élément textarea, ce n'est pas un problème: ces navigateurs respectent également
max-height
,max-width
,min-height
etmin-width
propriétés CSS pour fournir le redimensionnement dans certaines proportions.Exemple de code :
la source
resize:vertical
:) Cela semble être la solution "correcte" si vous cherchez à redimensionner verticalement autant que vous le souhaitez!J'espère que vous avez le même problème que j'avais ... ma question était simple: Faire un textarea fixe avec des pourcentages verrouillés à l' intérieur du conteneur (je suis nouveau à CSS / JS / HTML, donc garder avec moi, si je n'obtenez pas le jargon correct) de sorte que quel que soit l'appareil sur lequel il s'affiche, la boîte remplissant le conteneur (la cellule du tableau) occupe la bonne quantité d'espace. Voici comment je l'ai résolu:
Ensuite, CSS ressemble à ceci ...
Désolé pour le bloc de code bâclé ici, mais je devais vous montrer ce qui est important et je ne sais pas comment insérer du code CSS cité sur ce site. Dans tous les cas, pour vous assurer de bien voir de quoi je parle, le CSS important est moins en retrait ici ...
Ce que j'ai ensuite fait (comme indiqué ici), c'est de modifier très spécifiquement les pourcentages jusqu'à ce que je trouve ceux qui fonctionnaient parfaitement pour s'adapter à l'affichage, quel que soit l'écran de l'appareil utilisé.
Certes, je pense que le "redimensionner: aucun;" est exagéré, mais mieux vaut prévenir que guérir et maintenant, les consommateurs n'auront de toute façon pas à redimensionner la boîte, et peu importe le périphérique à partir duquel ils la visualisent.
Cela fonctionne très bien.
la source
la source