Quando assegno uno stile di base a tutti i seletti es.Perché i browser sostituiscono il valore della larghezza assegnato tramite css?
width: 300px;
padding: 0;
margin: 0;
border-width: 1px;
Ottengo risultati imprevisti quando si recupera la larghezza tramite javascript in circostanze diverse.
- Quando il prescelto è visibile il con è 298px.
- Quando il select è display: none, la larghezza è anche 298px (ff, jquery)
- Quando il selezionare è in un div con display: none, la larghezza è corretto 300px.
(il risultato è anche la stessa assegnazione: box-sizing: border-box)
Beh, la larghezza recuperate a volte è diverso dal browser utilizzato e framework javascript, ma tutto sommato Voglio solo essere in grado di recuperare la larghezza assegnata (300px). (Credo che abbia qualcosa a che fare con la "stranezza formale" ha dichiarato qui: http://meyerweb.com/eric/thoughts/2007/05/15/formal-weirdness/, ma perché i browser non utilizzeranno la larghezza assegnata dall'utente ??)
Come posso recuperare la larghezza assegnata? C'è davvero un modo per farlo?
Esempi:
http://jsfiddle.net/ETCcH/5/ (per l'utilizzo di jQuery, o sostituire il 5 con un 4 per un esempio di utilizzo MooTools)
(vista e provare con diversi browser)