Специализация
Python Backend Developer
Java Backend Developer
Node.js Backend Developer
Golang Backend Developer
React Frontend Developer
Выберите навыки
React
JavaScript
Git
Redux
Webpack
Сложность
1-3
4-6
7-8
9-10
Рейтинг вопросов
1
2
3
4
5
Подпишись на React Developer в телеграм
Какие существуют CSS-селекторы?
CSS-селекторы — это шаблоны, которые определяют, какие элементы HTML будут стилизованы.
Существует несколько типов селекторов:
простые селекторы (по тегу, классу или идентификатору),
составные селекторы (сочетающие несколько простых),
псевдоклассы (например, :hover или :focus)
псевдоэлементы (например, ::before и ::after).
Также можно использовать атрибутные селекторы для выбора элементов по значениям их атрибутов. Понимание селекторов позволяет более точно и эффективно управлять стилями на веб-странице.
Какие бывают комбинаторы селекторов и для чего каждый?
В CSS есть четыре основных комбинатора селекторов:
потомок ( ),
дочерний (>),
смежный сосед (+)
общий сосед (~).
Комбинатор потомка выбирает элементы, которые находятся внутри другого элемента, не обязательно на первом уровне.
Дочерний комбинатор выбирает только непосредственных детей.
Смежный сосед выбирает элемент, который идет сразу после другого элемента, а общий сосед выбирает все элементы, которые идут после другого элемента, независимо от их уровня вложенности.
Каков идеальный порядок селекторов псевдоклассов?
В CSS порядок применения псевдоклассов имеет значение, особенно когда несколько псевдоклассов могут быть одновременно применены к одному элементу. Чтобы правильно определить стили для таких ситуаций, существует порядок LVHA: :link, :visited, :hover, :active.
Этот порядок помогает обеспечить корректное отображение стилей для интерактивных элементов, таких как ссылки.
Как браузер определяет, какие элементы соответствуют селектору CSS?
Браузер определяет, какие элементы соответствуют селектору CSS, путем анализа HTML-структуры документа и применения селекторов к каждому элементу. Процесс включает в себя проверку селекторов по правилам специфичности, а затем применение найденных стилей к соответствующим элементам. Браузер проходит через дерево DOM, сравнивая элементы с селекторами в стилях, пока не найдет совпадения.
Как работает псевдокласс :is() и чем он отличается от других псевдоклассов?
Псевдокласс :is() позволяет сократить запись сложных селекторов, объединяя несколько селекторов в одном выражении. Он облегчает код и повышает его читаемость, применяя стили к элементам, соответствующим любому из указанных в :is() селекторов.
Что такое селекторы и как их использовать? Какие есть библиотеки?
Как использовать createSelector из reselect с RTK?
Как можно замемоизировать вызов селектора?
Почему селекторы вызываются при любом изменении store?
Какой стиль будет применён, если два правила имеют одинаковый селектор?
Рейтинг:
2
Сложность:
4
Селекторы — это функции, которые берут состояние Redux и возвращают нужные данные. Они помогают избежать повторения кода и улучшить читаемость. Для сложных вычислений с состоянием можно использовать библиотеки, такие как reselect, чтобы мемоизировать результаты и повысить производительность.
Рейтинг:
1
Сложность:
3
createSelector из библиотеки reselect позволяет создавать мемоизированные селекторы, которые эффективно извлекают и вычисляют данные из состояния Redux. С RTK он используется для создания производительных селекторов, которые избегают ненужных перерасчетов, если данные не изменились.
Рейтинг:
4
Сложность:
7
Чтобы замемоизировать вызов селектора в Redux, используется библиотека Reselect. Она позволяет создавать "мемоизированные" селекторы, которые пересчитывают свое значение только тогда, когда изменяются входные данные (аргументы) селектора. Если аргументы остались прежними, селектор возвращает закешированный результат, что предотвращает дорогостоящие вычисления и лишние ре-рендеры компонентов.
Рейтинг:
4
Сложность:
8
Селекторы вызываются при любом изменении store, потому что Redux не знает, какие данные реально изменились.
Store сообщает подписчикам о любом обновлении состояния.
Селекторы сами решают, изменился ли нужный им фрагмент.
Это нормальное поведение Redux.
Рейтинг:
5
Сложность:
5
Если у двух CSS-правил одинаковый селектор и одинаковая специфичность, браузер применит то правило, которое объявлено позже. Это связано с принципом каскада: последнее подходящее правило имеет приоритет. Такой конфликт часто возникает при подключении нескольких CSS-файлов или дублировании стилей. Порядок подключения файлов напрямую влияет на итоговый стиль.
Рейтинг:
1
Сложность:
3
Рейтинг:
3
Сложность:
7
Рейтинг:
3
Сложность:
7
Рейтинг:
5
Сложность:
10
Рейтинг:
3
Сложность:
7