Devo raddoppiare le dimensioni del div .box a 400px per 400px per abbinare la nuova immagine di sfondo ad alta risoluzione
No, ma è necessario impostare la background-size
proprietà in modo che corrisponda alle dimensioni originali:
@media (-webkit-min-device-pixel-ratio: 2),
(min-resolution: 192dpi) {
.box{
background:url('images/box-bg@2x.png') no-repeat top left;
background-size: 200px 200px;
}
}
MODIFICARE
Per aggiungere un po 'di più a questa risposta, ecco la query di rilevamento della retina che tendo a usare:
@media
only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and ( min--moz-device-pixel-ratio: 2),
only screen and ( -o-min-device-pixel-ratio: 2/1),
only screen and ( min-device-pixel-ratio: 2),
only screen and ( min-resolution: 192dpi),
only screen and ( min-resolution: 2dppx) {
}
- Fonte
NB. Questo min--moz-device-pixel-ratio:
non è un errore di battitura. È un bug ben documentato in alcune versioni di Firefox e dovrebbe essere scritto in questo modo per supportare le versioni precedenti (precedenti a Firefox 16).
- Fonte
Come @LiamNewmarch ha menzionato nei commenti qui sotto, puoi includere il background-size
nella tua background
dichiarazione abbreviata in questo modo:
.box{
background:url('images/box-bg@2x.png') no-repeat top left / 200px 200px;
}
Tuttavia, personalmente non consiglierei di utilizzare la forma abbreviata in quanto non è supportata in iOS <= 6 o Android rendendola inaffidabile nella maggior parte delle situazioni.