Меня очень сильно удивляет, что многие фронтендеры скрывают и показывают элемент, добавляя и удаляя самостоятельно свойство display со значением none. Есть же атрибут hidden.
Если в CSS для элемента будет задан, скажем, display: flex, то работать этот атрибут не будет.
По мере развития css в котором теперь и переменные, и функции, и обсуждается внедрение mixins
Только всё это сейчас не помогает для изоляции названий пользовательских свойств. Нет гарантий, что, подключая какую-нибудь библиотеку для календаря, там не окажется `--token-color-primary` как у вас в проекте. Библиотеки типа StyleX дают возможность устранить коллизии названий "CSS-переменных". Правда, отлаживать в инспекторе мучительно больно.
В самом примере для расчёта размера шрифта вьюпорт-единицы непосредственно не используются. Благодаря безразмерному множителю можно можно получить значение, которое будет меняться и при масштабировании экрана и учитывать настройки шрифта в браузере.
Где должно быть много сложных вычислений, которые нужно спрятать. Например, функция для вычисления безразмерного числа для размера вьюпорта: 0 - это минимальный размер, 1 - максимальный. Пригодится для плавной адаптивности. В демке - плавное изменение размера шрифта и прозрачности фонового цвета в зависимости от размера вьюпорта:
Если в CSS для элемента будет задан, скажем,
display: flex, то работать этот атрибут не будет.Ссылки на картинки неплохо бы обновить
The suggested pronunciation of JWT is the same as the English word "jot".
Только всё это сейчас не помогает для изоляции названий пользовательских свойств. Нет гарантий, что, подключая какую-нибудь библиотеку для календаря, там не окажется `--token-color-primary` как у вас в проекте. Библиотеки типа StyleX дают возможность устранить коллизии названий "CSS-переменных". Правда, отлаживать в инспекторе мучительно больно.
А такие точно есть? Сейчас в документации Eleventy такая функциональность помечена как to-do.
композиция классов
От препроцессоров - да, от БЭМ очень сложно отказаться
Можно не ждать и принести свое предложение в https://github.com/w3c/csswg-drafts/issues
А есть proposal?
В самом примере для расчёта размера шрифта вьюпорт-единицы непосредственно не используются. Благодаря безразмерному множителю можно можно получить значение, которое будет меняться и при масштабировании экрана и учитывать настройки шрифта в браузере.
Да, была неплохая статья с объяснением причин и инструментом для подбора значений, которые не ломали бы доступность.
Разве это можно реализовать на препроцессорах?
Где должно быть много сложных вычислений, которые нужно спрятать. Например, функция для вычисления безразмерного числа для размера вьюпорта: 0 - это минимальный размер, 1 - максимальный. Пригодится для плавной адаптивности. В демке - плавное изменение размера шрифта и прозрачности фонового цвета в зависимости от размера вьюпорта:
Не очень удачный пример. Без функции даже проще:
Можно было бы стилизовать нативные элементы
progressиmeter. Но там больше дополнительных действий по убиранию оформления по умолчаниюСо "срезами" как-то всё туманно.
Означает растянуть на всю высоту экрана, а не на высоту родительского элемента, что имеет больше смысла в контексте микрофронтов.
Те же табы недоступны с клавиатуры
От такого решения стоит отказаться хотя бы потому, что тут есть баг. Есть случаи, когда такой блок не будет квадратным.
Я для этого использую
:where. Например,.selector:where(.selector) {}Отображение со свойством
empty-cellsсильно зависит отborder-collapseСтранно, я это свойство в 2015-ом году использовал как улучшение.