Nie mogę znaleźć jasnej odpowiedzi na to pytanie i przepraszam, jeśli jest taka, którą przeoczyłem.Dynamicznie dostosuj szerokość tekstu w tekście HTML do treści
Chcę, aby moje szerokości wprowadzania tekstu automatycznie dostosowywały się do rozmiaru zawartości w nich. Najpierw z tekstem zastępczym, niż tekst, który ktoś wprowadza.
Poniżej stworzyłem poniższy przykład. Obecnie pola są znacznie większe niż mój tekst zastępczy, powodując ogromne ilości białej przestrzeni, i oczywiście jest to to samo, gdy coś wpisuję.
Próbowałem szerokości auto, jQuery oraz sznurka i gumy balonowej, które znalazłem w Internecie. Ale nic jeszcze nie zadziałało. jakieś pomysły? Dzięki!
HTML:
<span><p>Hello, my name is </p></span>
<span><input type="text" id="input" class="form" placeholder="name"></span>
<span><p>. I am </p></span>
<span><input type="text" id="input" class="form" placeholder="age"></span>
<span><p> years old.</p></span>
CSS:
.form {
border: 0;
text-align: center;
outline: none;
}
span {
display: inline-block;
}
p {
font-family: arial;
}
Nie ma dobrego sposobu, aby to zrobić. Trzeba by napisać funkcję javascript, aby sprawdzić długość łańcucha przy zmianie wejścia, a następnie dostosować szerokość danych wejściowych na podstawie liczby znaków * znaków *. Wygląda na to, że kod jest już dostępny: http://stackoverflow.com/questions/3392493/adjust-width-of-input-field-to-its-input. Po prostu dostosuj logikę dla wejścia === '', a następnie ustaw szerokość w oparciu o symbol zastępczy –
Obserwacja: Twoje imię i wiek nie powinny mieć tego samego identyfikatora. –
Możliwe rozwiązanie jest już omówione tutaj: http: // stackoverflow.com/questions/9328682/jquery-size-form-input-based-on-values-width –