Вниз  JavaScript
- 15.04.2024 / 13:33
Arigato
  Пользователь

Arigato 
Сейчас: Offline
Tygrain, так мы же не в ЕС ;-)
__________________
 don't tread on me
- 15.04.2024 / 14:49
RblSb
  Пользователь

RblSb 
Сейчас: Offline
segOro, так храни, это элементарно. Тебе нужно знать данные о теме еще до загрузки страницы, если не хочешь чтобы они мигала белым. Можно еще получать данные из жса о теме в системе, но это уже доп фича с автоопределением изначальной темы скорее.

Изменено RblSb (15.04 / 14:53) (всего 1 раз)
- 15.04.2024 / 15:46
segOro
  Пользователь

segOro 
Сейчас: Offline
Arigato, как ты будешь хранить автовыбор, зависящий от того, какая тема на устройстве?
- 16.04.2024 / 04:32
Tygrain
  Пользователь

Tygrain 
Сейчас: Offline
Цитата segOro:
Решил пока сделать костыль + подправил запрос:
  1. let theme = document.querySelector("#theme"); if (theme.dataset.theme == "auto" && window.matchMedia &&

я просто скрывал контент пока не подгружены стили
  1. <style>
  2.     /* Скрываем содержимое body до загрузки стилей */
  3.     body {
  4.       visibility: hidden;
  5.     }
  6.   </style>
  7.   <script>
  8.     const isDarkMode = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches
  9.     const css = document.createElement('link')
  10.     css.rel = "stylesheet"
  11.     css.href = `${isDarkMode ? "dark" : "light"}.css`
  12.     css.onload = () => document.body.style.visibility = "visible"
  13.     document.head.append(css)
  14.   </script>
  15. </head>
  16. <body>
  17.   ...
  18. </body>


Изменено Tygrain (16.04 / 04:33) (всего 3 раза)
- 16.04.2024 / 07:25
segOro
  Пользователь

segOro 
Сейчас: Offline
Tygrain, интересное решение, спасибо за идею скрытия.
Наверх  Всего сообщений: 725
Фильтровать сообщения
Поиск по теме
Файлы топика (19)