Ответ
Плюсы:
- Простота изучения и использования
- Отделение стилей от структуры (HTML)
- Кроссбраузерность (при правильном подходе)
- Возможность каскадного применения стилей
- Поддержка анимаций и переходов
- Медиа-запросы для адаптивного дизайна
Минусы:
- Глобальная область видимости (проблемы с изоляцией стилей)
- Сложность поддержки в больших проектах
- Ограниченная логика (нет переменных, условий в чистом CSS)
- Непредсказуемость каскада (специфичность может вызывать конфликты)
- Разные интерпретации в браузерах (требуются префиксы)
Пример проблемы специфичности:
.button { color: blue; }
#header .button { color: red; } /* Победит этот стиль */