2012-11-20 9 views
6

Eventuali duplicati:
Can I specify maxlength in css?Come limitare la lunghezza del testo di input usando CSS3?

Nel mio CSS io uso questo codice per rendere i bordi rotondi per tutti i tag input nel mio sito. Mi chiedo se è possibile limitare la lunghezza dell'ingresso nello stesso modo (ad esempio 50 caratteri)

input 
{ 
border-radius: 10px; 
-moz-border-radius: 10px; 
-khtml-border-radius: 10px; 
-webkit-border-radius: 10px; 
} 

immagino qualcosa di simile (questo non sta funzionando):

input 
{ 
max-lenght: 50; 
} 

Qualsiasi sugestions ? Grazie mille!

EDIT: Questa domanda è su quanti caratteri può l'utente scrivere nel campo, non la dimensione visibile dell'ingresso

+0

tramite HTML? http://www.w3schools.com/tags/att_input_maxlength.asp – Vucko

+0

Beh, suppongo che sia esattamente perché la limitazione di 'maxlength' è la semantica, e non quella di rappresentazione, è specificata come attributo HTML e non come regola CSS. – raina77ow

+0

in css si usa ':' invece di '=' – zeyorama

risposta

13

Non è possibile utilizzare CSS per limitare il numero di caratteri di input. Questa sarebbe una restrizione funzionale e il CSS si occupa della presentazione.

10

avrei gestire il limite di caratteri nel campo di input HTML. per esempio.

<input type="text" id="textbox" name="textbox" maxlength="50" /> 
+0

sì, ma ne ho molti e mi chiedevo un modo "automatico" :) – yenssen

+0

si potrebbe andare a prendersi la briga di scrivere JavaScript per limitare il numero di caratteri inseriti in una casella di input. È necessario associare l'evento "keydown" del campo di input, eseguire un conteggio sui caratteri e, se più di 50, impedire che il carattere venga scritto nel campo di input – jfmbrennan

+0

provare questo ... http: // jsfiddle. net/mKcgn/ – jfmbrennan

1

Aggiornamento:

è possibile utilizzare solo jQuery.

$(document).ready(function() { 
    $("input").attr('maxlength', '5');  
}); 

Se si vuole veramente un metodo automatico è possibile utilizzare combinazione di CSS e JavaScript.

JavaScript/JQuery

$(document).ready(function() { 
    // Get all the elements with class inputMaxLength and add maxlength attribute to them 
    $(".inputMaxLength").attr('maxlength', '5');  
}); 

CSS

.inputMaxLength 
{ 

} 

HTML

<input type="text" id="textbox" class="inputMaxLength" name="textbox" /> 

po 'di hack, ma funziona. Non c'è soluzione solo css per quanto ne so.

Problemi correlati