Скрытие определенных элементов опции из списка выбора iOS с помощью CSS или скрипта

1

У меня есть веб-приложение, в котором список выбора динамически создается через javascript. Выбор выбирается из существующего списка меню в DOM.

Я только что обнаружил, что iOS игнорирует CSS, ориентированный на избранные списки. Например, у меня есть медиа-запрос в max-width: 768, который предназначен для скрыть определенный элемент в списке выбора из представления, когда размер экрана составляет 768 пикселей и ниже.

Хотя это работает как ожидается, используя инструменты эмуляции устройства (т.е. Quirktools/screenfly), правило display: none полностью игнорируется, когда список выбора отображается на реальном устройстве iOS.

Есть ли предлагаемое решение?

  • 0
    Вы можете сделать несколько элементов select и переключать видимость всего этого в медиа-запросе.
  • 0
    Можно ли обернуть условные выражения jQuery в эквивалент медиазапросов? то есть, если (screen.max-width <= 768px) {создать пункт меню; }
Показать ещё 1 комментарий
Теги:
navigation
responsive-design

1 ответ

0

Решение, которое я решил сделать здесь, - это ввести условие в jQuery, чтобы оно не было записано в список опций.

Поскольку выбор показывается только на устройствах с разрешением 768px, нет необходимости включать медиа-запрос или window.width.

В результате элемент меню никогда не записывается в список выбора, а iOS выбирает переопределения CSS, которые не представляют проблемы.

$("nav.main li a").each(function () {

    var el = $(this);
    var elt = el.text();

    // Removing the extra » symbol
    elt = elt.replace("»", "");
    if (elt != 'Hide This Menu Item') {
        //Continue building select option list
    }
}

Ещё вопросы

Сообщество Overcoder
Наверх
Меню