2012-10-25 16 views
5

Così ho questo campo di testoCome posso modificare la lunghezza di un campo di testo in rotaie?

<%= f.text_field :body, placeholder: "Make an offer ", :maxlength=>"254" %> 

in questo momento occupa il 100% della larghezza della casella di cui si trova. Voglio che prenda come il 95%. Finora ho provato (da altri post del forum)

aggiungendo :columns => "50" ciò non ha avuto alcun effetto. Ho provato a mettere su un tag HTML, :html => { :id => "offer_form" } e poi mettere nel mio file css

#offer_form { width:50%;} 

questo non ha funzionato

altri suggerimenti?

edit:

mi sono reso conto che nel mio file css ho sotto/forme/

input, textarea, select, .uneditable-input { 
    border: 1px solid #bbb; 
    width: 98%; 
    padding: 10px; 
    height: auto !important; 
    margin-bottom: 15px; 

} 

e quando cambio la larghezza qui funziona. ma riguarda tutte le forme dell'intera app (ovviamente) (cioè sono tutte al 98%). C'è un modo in cui posso id solo questo campo in modo che io possa modificare la sua larghezza in modo indipendente.

risposta

4

Usa CSS. La larghezza del campo non è correlata ai suoi caratteri massimi.

input.body { 
    width:95%; 
} 
+0

che non incidono su di esso. Ci sono altri pezzi di codice che potrei mostrarti che potrebbero aiutarti? –

+0

Probabilmente quel codice * non * lo influenzerà, a meno che il tuo '' non abbia una classe di 'body'. Si intende applicare il CSS alle * specifiche classi/identificatori *. – meagar

+0

ohh ok. Penso di sapere cosa sta succedendo. Ho modificato la mia domanda –

15

aggiungere :size=>"50" opzione per text_field

<%= f.text_field :body, :size=>"50", placeholder: "Make an offer ", :maxlength=>"254" %> 
+0

che mi dà un errore di "dimensione" del metodo non definito. Qualche idea del perché? Pensavo che le dimensioni sarebbero state solo una qualità css. –

+2

Se stai ricevendo quell'errore, è perché hai lasciato il ':'. È ': size', non' size'. Questa risposta potrebbe rendere la tua casella di testo più piccola, ma se vuoi veramente rendere la tua casella di testo il 95% della larghezza del genitore, questo non può aiutarti. Hai bisogno di CSS. – meagar

Problemi correlati