К Оптимусу Прайму. Группировка CSS свойств

Привет еще раз, дорогой Оптимус.

В последнем письме я писал тебе о сортировке CSS свойств по алфавиту. Почему ты мне в ответ не пишешь? Я же твой самый большой и главный фанат. Мне нужен твой совет, слышишь?

Вместо того, чтобы сортировать CSS свойства, можно сгруппировать их по типу. Например, ребята из Яндекса используют 7 групп:

  • позиционирование (position, top, …, z-index);
  • блочная модель (display, float, …, overflow);
  • размеры (width, height, margin, padding, …);
  • таблицы/списки (border-collapse, list-style, …);
  • визуальщина (transition, transform, cursor, text-transform, …);
  • цвета (opacity, color, border, background, …);
  • шрифт (font-*, line-height).

Вот так выглядит CSS, разбитый по этим группам:

.score {
  position: relative;
  z-index: 10;

  float: left;

  margin: 13px 0;
  padding: 14px 0;

  text-align: center;
  vertical-align: middle;

  background-color: #fff;
  border-radius: 20px;

  font-size: 12px;
  font-size: 16px;
  line-height: 14px;
}

Такой CSS удобно читать и редактировать. Связанные свойства (position и z-index, margin и padding, font-size и line-height) находятся рядом. Важные группы идут первыми: позиционирование, раскладка, размеры. Когда работаешь с одной конкретной группой свойств, легче заметить дублирующиеся: повторяющийся font-size бросается в глаза в блоке из 3 свойств.

Проблема здесь одна: нужно думать. Нужно понимать CSS, нужно знать, к какой группе относится свойство. Ребята, «лишь бы в Хроме работало», не смогут разбить свойства, которые не понимают, на группы, в которых не разбираются.

Оптимус, от тебя фанатеет вся Земля. Я все твои цитаты знаю наизусть. Но письма без ответа на меня наводят грусть. Что скажешь, как тебе такие группировки? Жду письма!

P. S. Ты обязательно должен мне ответить, потому что я твой верный фанат.

P. S. Ещё больше постов о программировании, тестах и культуре разработки у меня в Телеграме.