Поскольку в версии 1.3 jquery-mobile по-прежнему отсутствует функция автоматического масштабирования текста при более высоком разрешении, я хотел бы поделиться своим личным решением этой проблемы. Это все еще хак, но у меня работает довольно хорошо.
Это переопределение для jquery.mobile-1.3.0.css, которое заставляет весь текст в любых компонентах пользовательского интерфейса масштабироваться относительно размера шрифта тела страницы. Поместите это где-нибудь в свой CSS и загрузите его после CSS jQm.
/* 16px > 1em */
.ui-bar,
.ui-loader-verbose h1,
.ui-bar h1, .ui-bar h2, .ui-bar h3, .ui-bar h4, .ui-bar h5, .ui-bar h6,
.ui-header .ui-title,
.ui-footer .ui-title,
.ui-btn-inner,
.ui-fullsize .ui-btn-inner,
.ui-fullsize .ui-btn-inner,
label.ui-submit,
.ui-collapsible-heading,
.ui-controlgroup-label,
.ui-controlgroup .ui-checkbox label, .ui-controlgroup .ui-radio label,
.ui-popup .ui-title,
label.ui-select,
label.ui-input-text,
textarea.ui-input-text,
.ui-li-heading,
label.ui-slider,
.ui-slider-switch .ui-slider-label {
font-size: 1em;
}
/* 14px > 0.875em */
.ui-li-divider,
input.ui-mini, .ui-mini input, textarea.ui-mini,
input.ui-input-text.ui-slider-input,
.ui-slider-switch.ui-mini .ui-slider-label {
font-size: 0.875em;
}
/* 12px > 0.75em */
.ui-mini .ui-btn-inner,
.ui-li-desc {
font-size: 0.75em;
}
/* 11px > 0.65em */
.ui-li-has-count .ui-li-count {
font-size: 0.65em;
}
Если затем установить размер шрифта тела страницы в медиа-запросе, все элементы пользовательского интерфейса автоматически адаптируются к размеру шрифта тела.
@media only screen and (min-device-width: 640px) {
/* increase font size on higher resolution */
body {
font-size: 26px;
}
/* increase icon size on higher resolution */
/* TODO .. */
}
Я также рекомендую переопределить значки в том же запросе, потому что версии 36px будут выглядеть слишком маленькими на устройствах с более высоким разрешением.