Wie kann ich verhindern, dass sich der Textbereich über das übergeordnete DIV-Element hinaus erstreckt?
Ich habe diesen Textbereich in einer Tabelle, die sich in einem DIV befindet, und es scheint, dass sich die gesamte Tabelle außerhalb ihrer Grenzen erstreckt.
Sie können ein Beispiel für dieselbe Situation auch in einem einfacheren Fall sehen, indem Sie einfach einen Textbereich in ein div einfügen (wie hier in www.stackoverflow.com verwendet).
Sie können den Bildern unten entnehmen, dass sich der Textbereich über die Größe des übergeordneten Bereichs hinaus erstrecken kann. Wie verhindere ich das?
Ich bin ein bisschen neu in CSS, daher weiß ich nicht wirklich, welche CSS-Attribute ich verwenden soll. Ich habe mehrere wie Anzeige und Überlauf versucht . Aber sie scheinen den Trick nicht zu tun. Was hätte ich sonst noch vermissen können?
UPDATE: HTML
CSS
textarea {
max-width: 50%;
}
#container {
width: 80%;
border: 1px solid red;
}
#cont2{
width: 60%;
border: 1px solid blue;
}
Wenn Sie diesen Code in http://jsfiddle.net einfügen , werden Sie feststellen , dass sie sich anders verhalten . Obwohl der Textbereich auf den in seinem CSS-Stil deklarierten Prozentsatz beschränkt ist, ist es dennoch möglich, die übergeordnete Tabelle so groß zu machen, wie sie sein möchte, und dann können Sie sehen, dass sie über den übergeordneten Rand hinausgeht. Irgendwelche Gedanken darüber, wie man das behebt? Wenn Sie
quelle
Antworten:
So deaktivieren Sie die Größenänderung vollständig:
So erlauben Sie nur die vertikale Größenänderung:
So erlauben Sie nur eine horizontale Größenänderung:
Oder Sie können die Größe begrenzen:
So beschränken Sie die Größe auf die Breite und / oder Größe der Eltern:
quelle
Das Steuerelement für die Größenänderung von Textbereichen ist über die CSS3-Eigenschaft zum Ändern der Größe verfügbar :
Zulässige Werte selbsterklärend:
none
(gerecht TextArea- Ändern der Größe)both
,vertical
undhorizontal
.Beachten Sie, dass in Chrome, Firefox und Safari die Standardeinstellung lautet
both
.Wenn Sie die Breite und Höhe des textarea - Elements beschränken wollen, ist das kein Problem: dieser Browser auch respektieren
max-height
,max-width
,min-height
, undmin-width
CSS - Eigenschaften Ändern der Größe innerhalb bestimmter Verhältnisse zu sorgen.Codebeispiel :
quelle
resize:vertical
:) Es scheint die "richtige" Lösung zu sein, wenn Sie die Größe vertikal ändern möchten, so viel Sie möchten!Ich hoffe , dass Sie das gleiche Problem haben , dass ich hatte ... meine Frage war einfach: Machen Sie ein festes Textfeld mit gesperrten Prozent im Innern des Behälters (Ich bin neu in CSS / JS / HTML, so Bär mit mir, wenn ich Verstehen Sie den Jargon nicht richtig), damit die Box, die den Behälter (die Tischzelle) füllt, unabhängig vom Gerät, auf dem sie angezeigt wird, den richtigen Platz einnimmt. So habe ich es gelöst:
Dann sieht CSS so aus ...
Entschuldigen Sie den schlampigen Codeblock hier, aber ich musste Ihnen zeigen, was wichtig ist, und ich weiß nicht, wie ich zitierten CSS-Code auf dieser Website einfügen soll. Um sicherzustellen, dass Sie sehen, wovon ich spreche, wird das wichtige CSS hier auf jeden Fall weniger eingerückt ...
Was ich dann getan habe (wie hier gezeigt), ist, die Prozentsätze ganz spezifisch zu optimieren, bis ich diejenigen gefunden habe, die perfekt zur Anzeige passen, unabhängig davon, welcher Gerätebildschirm verwendet wird.
Zugegeben, ich denke die "Größe ändern: keine;" ist übertrieben, aber sicherer als leid, und jetzt müssen die Verbraucher die Größe der Box ohnehin nicht mehr ändern, und es spielt auch keine Rolle, von welchem Gerät aus sie sie anzeigen.
Es funktioniert großartig.
quelle
quelle