Я экспериментирую с цветовыми схемами, у которых тёмный фон заголовка, но светлый фон сайта.
Можно ли как-то пометить эти цветовые схемы, чтобы они всё равно использовали логотип для тёмного режима (так как в нём светлый текст)?
Я экспериментирую с цветовыми схемами, у которых тёмный фон заголовка, но светлый фон сайта.
Можно ли как-то пометить эти цветовые схемы, чтобы они всё равно использовали логотип для тёмного режима (так как в нём светлый текст)?
Привет @FroggyC ![]()
возможно, эти ссылки помогут:
Хм, не очень просто. Наш расчёт для логотипов в тёмной теме основан на том, считается ли вся цветовая схема тёмной, и для этого мы сравниваем яркость основного и дополнительного цветов. Этот расчёт выполняется здесь в коде.
Ваш случай не совсем подходит под эту логику. Можно было бы написать переопределение темы для логотипа, по умолчанию использующее тёмный вариант, но тогда пользователям придётся переключать и темы, и цветовые схемы… сложно. Я предполагаю, что вы хотите дать пользователям возможность выбирать несколько цветовых схем, верно?
Да, я использую один экземпляр темы и хочу оставить всё именно так. Для пользователей это гораздо проще.
Меня устроило бы даже какое-то «костыльное» решение, например возможность внедрять пользовательские CSS/JS в зависимости от цветовой схемы.
Но в идеале, на мой взгляд, у каждой цветовой схемы должна быть опция, определяющая, какую логотип (тёмный или светлый) она будет использовать. Автоматическое определение на основе базового цвета фона не работает именно потому, что цвет фона заголовка может быть совершенно другим.
Это может быть желательно, хотя я не совсем уверен. Но даже если это так, цветовой схеме сложно это контролировать. В некотором смысле, если бы цветовая схема сама выбирала логотип, это означало бы, что она выходит за пределы своей зоны ответственности.
Это также усложняет любые возможные обходные пути. На данный момент у нас нет способа добавлять CSS или JS на основе названия или идентификатора цветовой схемы.
хм
а что насчёт конкретного цвета в палитре темы? например, условный CSS для логотипа на основе цвета заголовка?
Я полностью согласен.
На нашем форуме есть розовая цветовая схема. У неё розовая заголовочная панель и светлый вторичный цвет.
В светлой цветовой схеме заголовочная панель выглядит так:
В розовой цветовой схеме мы ожидаем, что логотип будет выглядеть так же, как и логотип для тёмной темы:
Но на самом деле мы получаем вот это, потому что Discourse просто считает, что адаптирует логотип светлой темы:
В итоге мы использовали менее элегантные компоненты темы, чтобы цвет логотипа зависел от цвета заголовка. Нас немного расстраивает автоматическое определение того, как тёмный и светлый режимы влияют на логотип.
Я имею в виду, что это, по-моему, не выходит за рамки цветовой схемы.
Речь не идёт о кастомных логотипах для каждой цветовой схемы. Я просто прошу добавить настройку, определяющую, какой логотип использовать для светлой или тёмной темы, вместо автоматического определения. Автоматическое определение может остаться по умолчанию.
Представляю выпадающий список с названием Обнаружение логотипа и вариантами Автоматически, Светлая, Тёмная. Тогда любой код, отвечающий за определение, сможет проверить эту настройку: если выбрано «Автоматически», он будет анализировать цвет фона, иначе просто выберет указанный логотип.
По-моему, это информация, семантически относящаяся к цветовой схеме, и уж точно не какая-то крупная функция.
Буду рад, если вы поделитесь своим решением, @Lhc_fl. Для меня это хотя бы временное решение.
Если ты сможешь подробнее объяснить, как это будет работать, @Lilly, я весь во внимании.
Мы создали отдельную тему для каждой цветовой схемы…
А, жаль. Спасибо.
Да, я сделал что-то похожее на @Lhc_fl для своего форума, но изменил цвет заголовка и логотип в зависимости от категории, используя две темы: светлую и тёмную. Мои пользователи не очень разбираются в технологиях, и для них опция переключения между светлой и тёмной темой в рамках одной темы оказалась запутанной, поэтому я использую отдельные светлую и тёмную темы. Думаю, это будет моим советом, учитывая, что вы работаете только с одной реальной темой. Переключатель тем в боковой панели TC упрощает пользователям смену темы.
Если я хочу сделать запрос на новую функцию, это делается через тред в #feature?
Да, так можно
Или мы можем переместить эту тему в #feature
Я считаю, что, по возможности, предпочтительнее создавать новые запросы с тегами #feature или ux, а не перетаскивать темы из раздела Support. Так вы сможете правильно сформулировать свою просьбу в первом посте, подробно описать сильный кейс использования и включить/резюмировать всё, что узнали в ходе изучения идеи в теме Support.
В конечном счёте, чем убедительнее ваш аргумент, тем выше шансы, что он будет рассмотрен для выделения времени на разработку. ![]()
Я создам новую тему и переформулирую её.