Чи потрібно мені подвоїти розмір .box div до 400px на 400px, щоб відповідати новому фоновому зображенню високої роздільної здатності
Ні, але вам потрібно встановити background-size
властивість відповідно до початкових розмірів:
@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;
}
}
EDIT
Щоб додати ще трохи до цієї відповіді, ось запит виявлення сітківки, який я, як правило, використовую:
@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) {
}
- Джерело
NB. Це min--moz-device-pixel-ratio:
не помилка друку. Це добре задокументована помилка в певних версіях Firefox і її слід писати так, щоб підтримувати старіші версії (до Firefox 16).
- Джерело
Як @LiamNewmarch згадується у коментарях нижче, ви можете включити background-size
у свою скорочену background
декларацію так:
.box{
background:url('images/box-bg@2x.png') no-repeat top left / 200px 200px;
}
Однак я особисто не радив би використовувати форму скорочень, оскільки вона не підтримується в iOS <= 6 або Android, що робить її ненадійною в більшості ситуацій.