Новое:Talanto осенью: фильтры с числами, отклик по шагам и каталог компаний

+1 183новые вакансии за сутки·93 833вакансии открыты сейчас·Новое:Talanto осенью: фильтры с числами, отклик по шагам и каталог компаний

Новые вакансии в TelegramРаботодателям
Talanto
Вакансии
Компании7 273
РезюмеAIПодготовкаСтатьи
BoostТарифыBoost
Войти

Не нашли подходящее?

Пусть нужная вакансия найдёт вас сама.

  1. Подборка в TelegramНовые вакансии по вашему фильтру — сразу в бота.Подключить
  2. Мэтчи по резюмеЗагрузите резюме — покажем, где вы подходите лучше всего.Загрузить
  3. Сохранить фильтрНастройте поиск один раз и возвращайтесь к новым вакансиям.Настроить
Что нового на TalantoTalanto осенью: фильтры с числами, отклик по шагам и каталог компаний

Для работодателей

Опубликуйте вакансию — отклики придут в ваш кабинет.

  1. Вакансиябесплатно
  2. Откликиконтакты бесплатно
  3. Наймэтапы и интервью

40 компаний публикуют вакансии напрямую · 4 409 кандидатов открыты к предложениям

Разместить вакансию

Популярные направления

Все подборки
  • Python17 230
  • Облачные технологии14 171
  • QA вакансии3 456
  • Backend вакансии2 115
  • Инженер данных1 801
  • Продакт-менеджер1 247

Разработка

  • Android1 858
  • iOS1 698
  • Fullstack вакансии996
  • AI вакансии955
  • Frontend вакансии755
  • Mobile вакансии44

По стеку

  • Go8 752
  • Java6 593
  • Node.js2 036
  • .NET1 739
  • Kotlin1 618
  • Rust1 472
  • C#717
  • PHP690
  • C++579

DevOps и инфраструктура

  • Kubernetes7 787
  • DevOps вакансии6 095
  • Linux-инфраструктура5 508
  • Terraform / IaC4 287
  • CI/CD3 272
  • Мониторинг и Observability1 792
  • SRE566
  • Кибербезопасность454

Аналитика и данные

  • Data Scientist1 138
  • Бизнес-аналитик921
  • Аналитик данных858
  • Системный аналитик154

Другие направления

  • Проджект-менеджер624
  • UI/UX дизайн149
  • Ручное тестирование14

По регионам

  • Вакансии в США44 166
  • Вакансии в Европе24 014
  • Вакансии в Канаде4 535
  • Работа в России3 867

По формату

  • Удалённые вакансии75 005
  • Релокация в США44 166
  • Гибридная работа12 485
  • Офисная работа7 090

По уровню

  • Senior вакансии42 643
  • Middle вакансии20 960
  • Junior вакансии6 708

Сейчас нанимают

Все компании
  • Wise190 вакансий
  • Rakuten189 вакансий
  • ASML166 вакансий
  • Grab137 вакансий
  • Celonis38 вакансий
  • Spotify37 вакансий
  • Adyen29 вакансий
  • Infobip28 вакансий
  • Monzo20 вакансий
  • Darktrace17 вакансий

Вакансии из 344 источников: карьерные страницы компаний и джоб-борды.

КомпанииО насНовостиПубличная офертаУсловия использованияПолитика конфиденциальностиПоддержка
←К теме Tailwind CSSВсе вопросы
Tailwind CSSMiddleКодинг

Как применять hover, focus и другие state-варианты в Tailwind?

В закладки
Сначала попробуйте ответить сами30 секунд
Сравнить с ответом ↓

State-варианты в Tailwind — префиксы перед утилитой: hover:bg-blue-500 добавляет bg-blue-500 при наведении. Поддерживаются hover, focus, active, disabled, group-hover, peer-checked и десятки других.

Основные псевдоклассы

<button
  class="
    bg-blue-500
    hover:bg-blue-600
    focus:ring-2 focus:ring-blue-300 focus:outline-none
    active:bg-blue-700
    disabled:opacity-50 disabled:cursor-not-allowed
    transition-colors
  "
>
  Кнопка
</button>

<input
  class="
    border border-gray-300
    focus:border-blue-500 focus:ring-1 focus:ring-blue-500
    placeholder:text-gray-400
    read-only:bg-gray-50
  "
  placeholder="Введите значение"
/>

State-варианты в Tailwind CSS

State-варианты (псевдоклассы и псевдоэлементы) добавляются как префикс перед любой утилитой через двоеточие. Это заменяет написание отдельных CSS-правил с псевдоклассами.

Варианты форм и состояний

<!-- Состояния чекбокса -->
<input
  type="checkbox"
  class="
    checked:bg-blue-500 checked:border-blue-500
    indeterminate:bg-gray-300
  "
/>

<!-- Валидация формы -->
<input
  class="
    valid:border-green-500
    invalid:border-red-500
    required:border-yellow-300
  "
  required
/>

<!-- Ссылки -->
<a class="visited:text-purple-600 hover:underline">Ссылка</a>

Группировка: group и group-hover

Маркер group на родителе позволяет стилизовать дочерние элементы при hover на родителе.

<div class="group flex items-center gap-3 p-4 rounded hover:bg-gray-100">
  <img class="size-10 rounded-full group-hover:ring-2 group-hover:ring-blue-500" />
  <div>
    <p class="font-medium group-hover:text-blue-600">Имя</p>
    <p class="text-sm text-gray-500 group-hover:text-gray-700">email@example.com</p>
  </div>
  <svg class="ms-auto opacity-0 group-hover:opacity-100 transition-opacity" />
</div>

Именованные группы

<!-- Несколько вложенных групп -->
<div class="group/card hover:shadow-lg">
  <div class="group/btn">
    <button class="group-hover/btn:bg-blue-500">Кнопка</button>
    <span class="group-hover/card:text-blue-500">Реагирует на карточку</span>
  </div>
</div>

Peer: стилизация по состоянию соседа

<!-- Показываем подсказку когда input в фокусе -->
<div class="relative">
  <input
    class="peer border rounded px-3 py-2"
    placeholder="Email"
  />
  <p class="hidden peer-focus:block text-sm text-blue-500 mt-1">
    Введите ваш email
  </p>
  <p class="hidden peer-invalid:block text-sm text-red-500 mt-1">
    Некорректный формат
  </p>
</div>

Псевдоэлементы

<blockquote class="
  relative
  before:content-['&ldquo;']
  before:text-4xl before:text-gray-300
  before:absolute before:-top-2 before:-left-4
  after:content-['&rdquo;']
">
  Цитата
</blockquote>

<!-- Стилизация выделенного текста -->
<p class="selection:bg-yellow-200 selection:text-black">
  Выделите этот текст
</p>

Варианты для data-атрибутов

<div data-state="open" class="data-[state=open]:block hidden">
  Видно только когда data-state=open
</div>

Подводные камни

  • peer работает только между соседними элементами — peer-элемент должен идти в HTML раньше целевого элемента, иначе CSS-селектор ~ не сработает.
  • group без именования не позволяет вложить несколько групп — используйте group/name синтаксис (v3.2+) для вложенных групп.
  • Псевдоэлемент before: и after: требуют хотя бы пустого content — без before:content-[''] элемент не отображается.
  • Варианты focus-within: и focus-visible: часто путают: focus-within срабатывает при фокусе на любом потомке, focus-visible — только при навигации с клавиатуры.
  • disabled: не работает на элементах без атрибута disabled — для кастомных компонентов используйте aria-disabled и вариант aria-disabled:opacity-50.
  • Состояние visited: ограничено браузером — из соображений приватности можно менять только цвет, а не layout-свойства.
  • Именованные группы и peer group/name появились в v3.2 — в более старых версиях недоступны.

Частые вопросы на собеседовании

  • Что такое Tailwind CSS и что означает подход «utility-first»?
  • Каковы лучшие практики организации Tailwind-классов в больших кодовых базах?
  • Как работает адаптивный дизайн в Tailwind? Объясните префиксы breakpoints (sm, md, lg, xl, 2xl).
  • Что такое массив content в конфигурации Tailwind и почему он важен?

Типичные ошибки

  • Смешивать «state-варианты» с похожим механизмом без критерия выбора.
  • Игнорировать риск: неверно оценить границы применения темы «state-варианты» и получить хрупкое решение.
  • Показывать только синтаксис и не объяснять поведение в runtime или сборке.

Что проверяет интервьюер

  • Объясняет условные utilities для hover, focus, disabled, aria и data-состояний.
  • Показывает на примере, как работает: варианты добавляют селекторный контекст к utility; Tailwind поддерживает псевдоклассы, media features, group, peer, aria/data и пользовательские варианты.
  • Называет production-нюанс и граничный случай для темы «state-варианты».

Как вы знаете этот вопрос?

Проверить себя по теме Tailwind CSS →

Источники

  • https://tailwindcss.com/docs/hover-focus-and-other-states
←Предыдущий вопросЧто такое `@theme` в Tailwind CSS v4 и как он заменяет JS-конфиг файл?Следующий вопрос→Как реализовать тёмную тему (dark mode) в Tailwind CSS?

Связанные темы

Tailwind CSSAccessibilityinteraction-design