Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

Документы

Медиа

Назад
Вопрос про IOS: dark, mode, light

Как поддержать темную и светлую тему внутри WebView?

Вопрос проверяет понимание взаимодействия системной темы iOS и веб-контента.

Короткий ответ

Поддержка тем реализуется через CSS и передачу информации о текущей теме в WebView. iOS автоматически сообщает WebKit о режиме интерфейса. HTML может адаптироваться через media query или JavaScript. Это позволяет синхронизировать внешний вид WebView с приложением.

Длинный ответ

Современные iOS-приложения должны поддерживать темную и светлую тему, включая встроенный веб-контент.

Использование CSS

Определение:
CSS media query позволяет определить текущую цветовую схему системы.

Пример:

@media (prefers-color-scheme: dark) {
    body {
        background-color: black;
        color: white;
    }
}

Поведение WKWebView

WebView:

  • автоматически передает информацию о теме

  • применяет соответствующие стили

  • обновляет внешний вид при смене темы

Альтернативный подход

Также можно:

  • передавать тему через JavaScript

  • подменять CSS-файлы

  • управлять стилями из нативного кода

Вывод

Лучший способ поддержки тем в WebView — использование prefers-color-scheme, так как он нативно интегрирован с системой.

Уровень

  • Рейтинг:

    4

  • Сложность:

    6

Навыки

  • IOS

    IOS

Ключевые слова

#dark

#mode

#light

Подпишись на iOS Developer в телеграм