К Оптимусу Прайму. Группировка 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. Ещё больше постов о программировании, тестах и культуре разработки у меня в Телеграме.