Frage von Findo1, 17

Text in Textbox automatisch dem Div anpassen.?

Ich hoffe ich kann meine Frage deutlich stellen, denn ich denke, es ist etwas kompliziert.

Ich habe auf Seite1.php einen Div mit einer festen breite von 300px. Und ich habe auf Seite2.php ein input type="text". Den Inhalt, den ich in das Textfeld schreibe, wird in einer Datenbank gespeichert und in dem Div auf Seite1 anzeigt. Das Problem ist jetzt natürlich, dass bei zu viel eingetippten Text , dieser in der Div Box nicht mehr richtig eingezeigt wird. Daher möchte ich folgendes realisieren:

Solange man den Rand der Divbox nicht überschreitet, soll man in dem Textfeld was eingeben können. Sobald die Breite des Divs aber erschöpft ist, soll man auch nichts mehr eingeben können.

Die Probleme sind ja Auflösung , Schriftgröße , die verschiedenen breien der Zeichen etc...

Ich hoffe mir kann jemand helfen.

MfG

findo1

Antwort
von mastema666, 10

Am einfachsten wäre es eine Monospace Schrift zu benutzen und einfach so viele Zeichen zu erlauben wie halt passen (alle Zeichen sind dort genau gleich breit). 

Alternativ einfach den breitesten Buchstaben (wahrscheinlich "w") als Basis für die maximalen Zeichen nehmen, dann werden ggf zwar auch mal Worte als zu lang erkannt, die noch passen würden, umgekehrt aber definitiv nicht (und sonderlich häufig sind derart lange Worte ja sowieso nicht, muss also nicht 100% genau sein, was afaik ohne Monospace Schrift sowieso nicht ginge).

Man könnte Worte ab einer bestimmten Länge zwar auch automatisch trennen, aber das geht afaik nur ohne Beachtung der Rechtschreibung (d.h. es wird einfach nach X Buchstaben getrennt, ob sinnvoll oder nicht), weshalb ich das eher nicht so machen würde, dann eher noch das Wort einfach kürzen und das ganze Wort in einem Tooltip anzeigen.

Kommentar von Findo1 ,

Hatte dir auch bei Skype geschrieben :) Ich setzt mich mal mit der Monospace Schrift auseinander

Kommentar von mastema666 ,

Ah, du warst das, stimmt, die Frage kam mir auch schon irgendwie so bekannt vor^^

Keine passende Antwort gefunden?

Fragen Sie die Community