CSS однострочники для улучшения (почти) любого проекта
Большинство из этих однострочников будут состоять из одного объявления внутри CSS правила. В некоторых случаях селектор будет больше, чем просто элемент; в других случаях будут добавлять дополнительные объявления в качестве рекомендаций для лучшего опыта, таким образом делая их больше, чем однострочник — заранее прошу прощения за такие случаи.
Некоторые из этих однострочников скорее личный выбор и применимы не ко всем сайтам (не все используют таблицы или формы). Ниже будет кратко описан каждый из них, что они делают (с примерами изображений) и почему мне нравится их использовать. Обратите внимание, что примеры изображений могут быть построены на основе предыдущих примеров.
Ограничение ширины контента в области просмотра
body {
max-width: clamp(320px, 90%, 1000px);
/* дополнительная рекомендация */
margin: auto;
}Добавив эту строку, вы уменьшите размер контента, чтобы он занимал 90% области просмотра, ограничив его ширину между 320px и 1000px (не стесняйтесь изменять минимальные и максимальные значения).
Это изменение автоматически заставит контент выглядеть намного красивее. Он больше не будет выглядеть огромным текстовым блоком, а будет смотреться более структурированным и организованным. А если ещё добавить margin: auto; к body, то контент будет выровнен по центру страницы. Две строчки кода позволяют контенту выглядеть намного лучше.

Увеличение размера текста
body {
font-size: 1.25rem;
}Давайте посмотрим правде в глаза: стандартный размер шрифта в браузерах — 16px — это мало. Хотя это может быть личным мнением, основанным на том, что я старею 😅.
Одно из быстрых решений — увеличение размера шрифта в body. Благодаря каскаду и блокам em, используемым браузерами, весь текст на веб-странице автоматически увеличится.

Увеличение расстояния между строками
body {
line-height: 1.5;
}Ещё один способ улучшить читабельность и избавиться от страшной стены текста — увеличить расстояние между строками в абзацах и контенте. Это легко сделать с помощью свойства line-height.

Этот вариант (как и два предыдущих) значительно увеличит вертикальный размер страницы, но, уверяю вас, текст станет более читабельным и дружелюбным для всех пользователей.
Ограничение размера изображений
img {
max-width: 100%;
}Изображения должны быть примерно равны занимаемому ими пространству, но иногда получаются очень длинные картинки, из-за которых контент смещается и возникает горизонтальная прокрутка.
Один из способов избежать этого — установить максимальную ширину в 100%. Хотя это не совсем верное решение ('margin' и 'padding' могут влиять на ширину), в большинстве случаев оно работает.

Ограничение ширины текста в контенте
p {
max-width: 65ch;
}Ещё одна тактика, позволяющая избежать страшной стены текста и рек пространства, — применять этот стиль даже в сочетании с максимальной шириной в body. Это может выглядеть ненужным и иногда странным, поскольку абзацы будут более узкими, чем другие элементы. Но мне нравится контраст и более короткие строки.
Ранее мне помогало значение 60ch или 65ch, но вы можете использовать другое значение и настроить максимальную ширину в соответствии с вашими потребностями. Поиграйте и посмотрите, как это выглядит на вашей веб-странице.

Переносите заголовки более сбалансированным способом
h1, h2, h3, h4, h5, h6 {
text-wrap: balance;
}Заголовки — неотъемлемая часть веб-структуры, но из-за их большого размера и короткого содержимого они могут выглядеть странно. Особенно если занимают более одной строки. Решение, которое поможет в этом случае, — сбалансировать заголовки с помощью text-wrap.
Хотя balance кажется самым популярным значением для text-wrap, оно не единственное. Также можно использовать pretty, при необходимости перемещающее последнее слово в последнюю строку вместо балансировки всего содержимого. К сожалению, pretty ещё не получил полной поддержки.

Цвета элементов управления формой в соответствии со стилем страницы
body {
accent-color: #080; /* используйте любимый цвет */
}Ещё одно небольшое изменение, не оказывающее существенного влияния, но улучшающее внешний вид. До недавнего времени мы не могли стилизовать элементы управления формы с помощью CSS и были вынуждены ориентироваться на отображение в браузере. Но теперь всё изменилось.
Разработка целого компонента может быть хлопотным занятием, но установить цвет, более близкий к остальным компонентам сайта и системе дизайна, можно и просто с помощью этой однострочной инструкции.

Простые для восприятия строки таблицы
:is(tbody, table) > tr:nth-child(odd) {
background: #0001; /* или #fff1 для тёмной темы */
}Таблицы нужны для отображения данных, а не для вёрстки. Но таблицы по умолчанию некрасивы, а мы не хотим, чтобы данные выглядели некрасиво. В частности, одна вещь, которая помогает организовать данные и сделать их более читаемыми, — это таблица-зебра с чередованием тёмных и светлых строк.
Вышеприведённый однострочник позволяет легко добиться такого стиля. Его можно упростить и использовать только tr, не обращая внимания на tbody или родительский table, но тогда он будет применяться и к заголовку таблицы, чего мы, возможно, не хотим. Это дело вкуса.

Отступы в ячейках таблиц и заголовках
td, th {
padding: 0.5em; /* or 0.5em 1em... или любое значение отличное от 0 */
}И последнее изменение, которое поможет сделать таблицы более доступными и удобными для чтения, — это небольшое разделение содержимого, добавив padding к ячейкам таблицы и заголовкам. По умолчанию в большинстве браузеров нет никакого padding, и текст разных ячеек соприкасается, что приводит к путанице в определении того, где начинается одна ячейка и заканчивается другая.
Можно изменить значение padding, чтобы подогнать его под нужный размер. Однако не переусердствуйте, чтобы избежать ненужного скроллинга или слишком большого пустого пространства.

Уменьшение анимации и движения
@media (prefers-reduced-motion) {
*, *::before, *::after {
animation-duration: 0s !important;
/* дополнительная рекомендация */
transition: none !important;
scroll-behavior: auto !important;
}
}Хорошо, хорошо. Этот код — нечто большее, чем просто однострочник. У него есть однострочная версия (удаление анимации путём установки её длительности в ноль секунд), но другие вещи на веб-странице заставляют элементы двигаться.
Установив эти объявления в медиа-запрос prefers-reduced-motion, мы удовлетворим выбор пользователя в пользу меньшего количества движений. Этот подход несколько радикален, потому что он удаляет всё движение, что не всегда соответствует намерениям пользователя — это уменьшенное движение
, а не отсутствие движения
. При необходимости можно сохранять движение в каждом конкретном случае.
