Ok, quindi sappiamo che l'impostazione del riempimento su un oggetto fa sì che la sua larghezza cambi anche se è impostata esplicitamente. Mentre si può argomentare la logica dietro questo, provoca alcuni problemi con alcuni elementi.
Nella maggior parte dei casi, è sufficiente aggiungere un elemento figlio e aggiungere il riempimento a quello invece di quello impostato al 100%, ma per gli input del modulo non è un passaggio possibile.
Dai un'occhiata a questo: http://sandman.net/test/formcss.html
Il secondo input ha il padding impostato su 5px che preferisco di gran lunga all'impostazione predefinita. Ma sfortunatamente ciò fa aumentare l'input di 10 pixel in tutte le direzioni, incluso l'aggiunta di 10 pixel alla larghezza del 100%.
Il problema qui è che non riesco ad aggiungere un elemento figlio all'interno dell'input, quindi non posso ripararlo. Quindi la domanda è:
C'è un modo per aggiungere imbottitura all'interno dell'input mantenendo comunque la larghezza al 100%? Deve essere al 100% poiché i moduli verranno visualizzati in genitori di larghezza diversa, quindi non conosco in anticipo la larghezza del padre.
box-sizing
attributo CSS3