Приходилось ли верстать без использования библиотек
Что проверяют
Знаете ли вы платформу без прослойки. Кандидат, который умеет только собирать интерфейс из готовых компонентов, застревает на нестандартном макете и на правке чужих стилей, а такие задачи есть в любом проекте.
Как отвечать
Скажите, где именно обходились без фреймворка, и назовите средства платформы, которыми пользовались вместо него:
- раскладка на flex и grid, включая
grid-template-areasи автоколонки черезrepeat(auto-fit, minmax(...)); - адаптивность без брейкпоинта на каждый экран:
clamp()для типографики и отступов, контейнерные запросы там, где важен размер блока, а не окна; - темы и варианты через пользовательские свойства CSS, а не через дублирование классов;
- семантика и доступность: порядок заголовков,
labelу полей, состояние через aria-атрибуты, видимый фокус; - готовые элементы браузера вместо самописных:
dialogдля модального окна,detailsдля раскрытия, встроенная валидация формы.
Хорошо привести конкретную сложность и решение: липкая шапка таблицы, карточка с обрезкой текста по числу строк, форма, которая не прыгает при появлении ошибки. И честно сказать, где библиотека оправдана: выпадающие списки со сложным позиционированием и клавиатурой, виртуализация длинных списков, таблицы с сортировкой и группировкой.
Где спотыкаются
Понимают вопрос как «умею ли я писать CSS руками» и рассказывают про отказ от препроцессора. Спрашивают о другом: соберёте ли вы доступный работающий компонент, когда готового под рукой нет.
Приносят устаревшие приёмы как доказательство самостоятельности: вендорные префиксы для flex и grid, раскладка на флоатах, хаки под давно мёртвые браузеры. Это читается не как опыт, а как опыт, который не обновлялся много лет.
Превращают отказ от библиотек в принцип. Свой выпадающий список с полной клавиатурной поддержкой, правильным позиционированием и объявлением состояния скринридеру стоит дороже, чем кажется на старте, и такой ответ показывает, что цену вы не считали.