Non riesco a trovare una risposta chiara su questo, e mi scusi se ce n'è una che ho perso.Aggiusta dinamicamente la larghezza di input del testo HTML al contenuto
Desidero che le larghezze di input del testo si adattino automaticamente alle dimensioni del contenuto al loro interno. Innanzitutto con il testo segnaposto rispetto al testo effettivo inserito da qualcuno.
Ho creato il seguente esempio. Attualmente, le scatole sono molto più grandi del mio testo segnaposto, causando enormi quantità di spazio bianco, ed è ovviamente la stessa cosa quando scrivo qualcosa.
Ho provato larghezza auto, alcuni jQuery e spago e gomme da masticare che ho trovato su internet. Ma nulla ha funzionato ancora. qualche idea? Grazie!
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;
}
non c'è buon modo per farlo. Dovresti scrivere una funzione javascript per verificare la lunghezza della stringa in cambio di input, quindi regolare la larghezza dell'input in base al # di caratteri * larghezza del carattere. Sembra che il codice sia già qui: http://stackoverflow.com/questions/3392493/adjust-width-of-input-field-to-its-input. Basta regolare la logica per quando input === '', quindi rendere la larghezza in base al segnaposto. –
Osservazione: il tuo nome e l'età non dovrebbero avere lo stesso ID. –
La possibile soluzione è già discussa qui: http: // stackoverflow.it/questions/9328682/jquery-resizing-form-input-based-on-values-width –