Это трудно ответить. Оба варианта имеют свои плюсы и минусы на мой взгляд.
Лично я не люблю читать через один ОГРОМНЫЙ файл CSS, и поддерживать его очень сложно. С другой стороны, его разделение вызывает дополнительные http-запросы, которые потенциально могут замедлить работу.
Мое мнение будет одной из двух вещей.
1) Если вы знаете, что ваш CSS НИКОГДА не изменится после того, как вы его построите, я создам несколько файлов CSS на этапе разработки (для удобства чтения), а затем вручную объединю их перед началом работы (для уменьшения запросов http)
2) Если вы знаете, что собираетесь менять свой CSS время от времени и хотите, чтобы он был читабельным, я бы создавал отдельные файлы и использовал код (при условии, что вы используете какой-то язык программирования), чтобы объединить их в время сборки (время минимизации / комбинации во время выполнения является ресурсной свиньей).
В любом случае я бы настоятельно рекомендовал кэширование на стороне клиента, чтобы еще больше сократить число запросов HTTP.
РЕДАКТИРОВАТЬ:
я нашел этот блог, который показывает, как объединить CSS во время выполнения, используя только код. Стоит взглянуть (хотя я сам еще не проверял).
РЕДАКТИРОВАТЬ 2:
я остановился на использовании отдельных файлов во время разработки, а также процесс сборки для минимизации и объединения. Таким образом, я могу иметь отдельный (управляемый) CSS во время разработки и правильный монолитный минимизированный файл во время выполнения. И у меня все еще есть мои статические файлы и меньше системных издержек, потому что я не делаю сжатие / минификацию во время выполнения.
примечание: для ваших покупателей я настоятельно рекомендую использовать bundler как часть вашего процесса сборки. Независимо от того, выполняете ли вы сборку из среды IDE или из сценария сборки, упаковщик может exe
запускаться в Windows через включенный или запускаться на любом компьютере, на котором уже запущен node.js.