Ok, quindi sappiamo che l'impostazione di riempimento su un oggetto ne modifica la larghezza anche se è impostata in modo esplicito. Mentre si può argomentare la logica alla base di questo, ciò causa alcuni problemi con alcuni elementi.Riempimento all'interno degli input interrompe la larghezza 100%
Per la maggior parte dei casi, basta aggiungere un elemento figlio e aggiungere padding a quello anziché a 100%, ma per gli input del modulo non è possibile.
Date un'occhiata a questo: http://sandman.net/test/formcss.html
Il secondo ingresso ha il suo padding impostato 5px che ho molto preferisco l'impostazione predefinita. Ma sfortunatamente questo fa crescere l'input di 10px in tutte le direzioni, inclusa l'aggiunta di 10px alla larghezza del 100%.
Il problema è che non riesco ad aggiungere un elemento figlio all'interno dell'input, quindi non posso ripararlo. Quindi la domanda è:
C'è un modo per aggiungere padding all'interno dell'ingresso mantenendo la larghezza al 100%? Deve essere al 100% poiché i moduli verranno visualizzati in genitori con larghezza diversa, quindi non conosco in anticipo la larghezza del genitore.
Vedere http://stackoverflow.com/questions/628500/can-i-stop-100-width-text-boxes-from-extending-beyond-their-containers/628912#628912 per come utilizzare il CSS3 ' attributo "dimensionamento box" –
Devo solo dire, grazie per aver mantenuto la pagina di esempio per tutto questo tempo. Mi fa impazzire quando qualcuno posta un url nella domanda ed è giù dopo che la risposta ha risposto o non usano qualcosa come jsfiddle. –
Relativamente all'utilizzo dell'attributo di dimensionamento della casella; il mio problema era lo stesso problema ma con altezza - altezza di impostazione al 100% da solo significa altezza + bordo + riempimento = altezza del contenitore. Per ottenere l'input per avere l'altezza effettiva del contenitore, ho semplicemente dovuto usare il dimensionamento della scatola : content-box. – Skychan