Qualcuno ha un'idea su come "correggere" il rendering in IE 9 e 10 di una combinazione di box-shadow e border-radius?Come risolvere il rendering IE di border-radius combinato con box-shadow?
È particolarmente evidente quando si utilizzano le ombre interne. Il raggio dell'ombra è molto diverso in IE rispetto al webkit/gecko ...
In questa immagine è possibile vedere il problema. Sulla sinistra c'è un pulsante con un'insieme box-shadow, a destra senza box-shadow. (Non importa il diverso carattere rendering)
Ecco il codice utilizzato: http://dabblet.com/gist/5450815
Grande domanda. Navigando tra le [specifiche W3] (http://www.w3.org/TR/css3-background/#the-border-radius), non sono sicuro di quale agente utente abbia ragione (o se questo comportamento è definito). Non sono riuscito a trovare alcun dettaglio specifico da WHATWG (che spesso entra in profondità nell'implementazione del browser). Sembra che il raggio interno dell'ombra della scatola prenda il raggio * esterno * del bordo, quindi qualcosa come [questo] (http://jsfiddle.net/JMVgd/3/) corrisponde effettivamente a quello corretto. Tuttavia, quando non ci sono margini, questa inferenza di una larghezza esterna porta ai risultati indesiderati che stai vedendo. Non sono riuscito a trovare una soluzione alternativa. –
Chrome, Firefox e Opera interpretano correttamente le larghezze del browser inset come relative allo spazio visualizzato all'interno dell'elemento. Mentre IE non si preoccupa mai di fare la distinzione tra spazio interno ed esterno e usa sempre la curvatura del confine esterno. Dai un'occhiata qui: http://dabblet.com/gist/5503928 L'ombra di riquadro interno di IE corrisponde perfettamente alla curvatura di un bordo esterno 10px. Gli altri non invertono semplicemente lo stile del bordo, lo ricalcolano in base ai limiti dell'elemento. L'implementazione di IE è sbagliata e sembra pigra se siamo onesti. –