Категории

Извлекатель CSS-селекторов

Извлекает и категоризирует все CSS-селекторы из CSS-контента

Извлекатель CSS-селекторов

Этот инструмент помогает анализировать и извлекать CSS-селекторы из ваших таблиц стилей:

Поддерживаемые Типы Селекторов:

  • Селекторы Классов: .class-name, .multiple.classes
  • Селекторы ID: #id-name
  • Селекторы Элементов: div, span, button
  • Селекторы Атрибутов: [type="text"], [data-*]
  • Псевдоклассы: :hover, :nth-child(2), :not(.class)
  • Псевдоэлементы: ::before, ::after, ::first-line
  • Комбинаторы: потомок (>), соседний (+), общий_sibling (~)

Возможности:

  • Игнорирует CSS-комментарии
  • Отслеживает номера строк
  • Обрабатывает вложенные селекторы (SCSS/LESS)
  • Поддерживает @media queries и @keyframes
  • Устраняет дубликаты
  • Вычисляет специфичность CSS

Include selectors inside @media queries

Include selectors inside @keyframes

Remove duplicate selectors from results

Calculate CSS specificity for each selector

Ключевые факты

Категория
Development
Типы входных данных
textarea, checkbox
Тип результата
json
Покрытие примерами
4
API доступен
Yes

Обзор

Извлекатель CSS-селекторов — это инструмент для анализа и извлечения всех CSS-селекторов из вашего кода. Он поддерживает различные типы селекторов, включая классы, ID, элементы, атрибуты, псевдоклассы и псевдоэлементы, а также обрабатывает вложенные селекторы в SCSS/LESS, игнорируя комментарии и отслеживая номера строк.

Когда использовать

  • Когда нужно провести аудит CSS-кода на сложность, специфичность и выявить неиспользуемые селекторы.
  • Для документирования или рефакторинга таблиц стилей, чтобы понять структуру и категорию всех селекторов.
  • При оптимизации производительности CSS, анализируя дубликаты и вложенные селекторы в SCSS/LESS.

Как это работает

  • Вставьте или загрузите ваш CSS-контент в текстовое поле, поддерживается обработка вложенных селекторов.
  • Настройте параметры: включите или отключите обработку @media queries, @keyframes, удаление дубликатов и вычисление специфичности.
  • Запустите инструмент, и он извлечет все селекторы, категоризирует их по типам и предоставит результат в структурированном формате JSON.

Сценарии использования

Аудит CSS-фреймворков или библиотек для выявления избыточных или конфликтующих селекторов.
Подготовка автоматической документации по используемым селекторам в проекте для команды разработчиков.
Оптимизация CSS-кода путем анализа и удаления дубликатов, неиспользуемых селекторов и управления специфичностью.

Примеры

1. Аудит CSS-файла проекта

Веб-разработчик
Контекст
Разработчик работает над крупным веб-проектом и хочет понять структуру селекторов в основном файле стилей.
Проблема
Нужно извлечь и категоризировать все селекторы из файла styles.css для анализа сложности и выявления потенциальных проблем.
Как использовать
Вставьте содержимое файла styles.css в поле 'CSS-контент' и оставьте настройки по умолчанию для полного анализа.
Пример конфигурации
Включены опции: @media queries, @keyframes, удаление дубликатов и вычисление специфичности.
Результат
Получите JSON со списком всех селекторов, их типами, номерами строк и специфичностью, что помогает в рефакторинге и оптимизации кода.

2. Поиск дублирующихся селекторов

Фронтенд-инженер
Контекст
В коде проекта есть подозрение на дублирование селекторов, что увеличивает размер CSS и может вызывать конфликты.
Проблема
Выявить и удалить дубликаты селекторов для уменьшения объема кода и улучшения поддержки.
Как использовать
Загрузите CSS-контент, убедитесь, что опция 'Устранять Дубликаты' включена, и запустите извлечение.
Результат
Инструмент предоставит уникальные селекторы, указав дубликаты, что позволяет очистить код и сократить его размер.

3. Документирование селекторов для команды

Контекст
Команде разработчиков нужно создать справочник по используемым CSS-селекторам для улучшения совместной работы и понимания кода.
Проблема
Автоматически извлечь и категоризировать селекторы из нескольких файлов для формирования документации.
Как использовать
Введите или загрузите CSS-код, отключите вычисление специфичности если не требуется, и получите структурированный список.
Результат
Сгенерированный JSON можно использовать для создания документации, вики или интеграции с инструментами разработки.

Проверить на примерах

video

Связанные хабы

FAQ

Какие типы селекторов поддерживает инструмент?

Поддерживаются селекторы классов, ID, элементов, атрибутов, псевдоклассы, псевдоэлементы и комбинаторы, такие как потомок или соседний.

Можно ли обрабатывать SCSS или LESS файлы?

Да, инструмент обрабатывает вложенные селекторы, характерные для препроцессоров SCSS и LESS, игнорируя комментарии.

Что такое специфичность CSS и зачем её вычислять?

Специфичность определяет приоритет селекторов в CSS. Вычисление помогает понять конфликты стилей и оптимизировать код.

Инструмент удаляет дубликаты по умолчанию?

Да, по умолчанию включено удаление дубликатов, но это можно отключить в настройках для сохранения всех результатов.

Какой формат выходных данных?

Результат предоставляется в структурированном формате JSON, содержащем список селекторов с их типами, номерами строк и, при необходимости, специфичностью.

Документация API

Конечная точка запроса

POST /ru/api/tools/css-selector-extractor

Параметры запроса

Имя параметра Тип Обязательно Описание
cssContent textarea Да -
includeMediaQueries checkbox Нет Include selectors inside @media queries
includeKeyframes checkbox Нет Include selectors inside @keyframes
deduplicate checkbox Нет Remove duplicate selectors from results
calculateSpecificity checkbox Нет Calculate CSS specificity for each selector

Формат ответа

{
  "key": {...},
  "metadata": {
    "key": "value"
  },
  "error": "Error message (optional)",
  "message": "Notification message (optional)"
}
Данные JSON: Данные JSON

Документация MCP

Добавьте этот инструмент к конфигурации сервера MCP:

{
  "mcpServers": {
    "elysiatools-css-selector-extractor": {
      "name": "css-selector-extractor",
      "description": "Извлекает и категоризирует все CSS-селекторы из CSS-контента",
      "baseUrl": "https://elysiatools.com/mcp/sse?toolId=css-selector-extractor",
      "command": "",
      "args": [],
      "env": {},
      "isActive": true,
      "type": "sse"
    }
  }
}

Вы можете объединять несколько инструментов, например: `https://elysiatools.com/mcp/sse?toolId=png-to-webp,jpg-to-webp,gif-to-webp`, максимум 20 инструментов.

Если вы столкнулись с проблемами, пожалуйста, свяжитесь с нами по адресу [email protected]