Просто приведу приведенные выше ответы, которые сработали для меня, с одной важной оговоркой: время перерисовки в IE8 делает метод прозрачного пикселя 1x1 непригодным для этой цели на холсте приличного размера.
Поскольку CSS не может определить авто-подгонку или браузеры Android (Chrome на Android все равно выглядит нормально), мой обходной путь был
- нацелены на устройства меньшего размера (поскольку IE8 обычно является настольным), а
- предназначается только для релевантных тегов 'p' (автозаполнение предназначается только для некоторых тегов 'p'), поэтому, если мы применяем это исправление только там, где это необходимо, мы сохраняем влияние на производительность перерисовки как можно ниже.
Мой обходной путь (основываясь на ответе Деметика выше):
/* work around mobile device auto-fitting */
@media only screen and (max-device-width: 800px) {
#content p {
background-image:url(data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==);
background-repeat:repeat;
}
}
На моем сайте '#content' находятся теги 'p', которые устанавливаются автоматически, естественно вам нужно это изменить. «body» будет работать, да, но чем конкретнее, тем меньше влияние на время перерисовки.
Возможно, стоит добавить режим обнаружения только в портретной ориентации, так как автоматическая подгонка, кажется, не нацелена на ландшафт - но я не тестировал его на достаточном количестве устройств, чтобы подтвердить, что это всегда так.