
Горизонтальная линия <hr> в HTML традиционно используется для визуального разделения контента. В CSS она становится инструментом точной настройки дизайна, позволяя менять толщину, цвет и стиль линии без добавления дополнительных элементов.
Для изменения внешнего вида hr применяются свойства height, border и background. Толщину линии удобно задавать через height, а цвет можно контролировать с помощью border-color или градиентов на фоне. Для создания декоративных разделителей часто используют псевдоэлементы ::before и ::after, которые позволяют добавлять точки, штрихи или тени.
Особое внимание стоит уделить отступам и ширине линии. Свойства margin и width позволяют точно позиционировать hr в блоке текста, обеспечивая визуальный баланс страницы. Для динамических эффектов применяются анимации изменения цвета, толщины или положения, что особенно актуально для современных интерфейсов и интерактивных разделителей.
Знание этих приёмов позволяет создавать линии, которые не только разделяют контент, но и подчёркивают структуру страницы, улучшая восприятие информации пользователями.
Изменение толщины и цвета линии hr

Толщину горизонтальной линии <hr> в CSS задают через свойство height. Для тонких разделителей достаточно 1–2 пикселей, для акцентных линий – 4–6 пикселей. Пример:
hr { height: 3px; }
Цвет линии можно изменять через border-color или background-color, в зависимости от выбранного способа отображения. Для однотонной линии достаточно:
hr { background-color: #3498db; border: none; }
Для наглядности изменения толщины и цвета приведена таблица с рекомендуемыми значениями для различных типов дизайна:
| Тип линии | Толщина | Цвет | Использование |
|---|---|---|---|
| Тонкая | 1–2px | #cccccc | Для аккуратного разделения абзацев и блоков текста |
| Средняя | 3–4px | #3498db | Для подчёркивания заголовков или важных секций |
| Толстая | 5–6px | #e74c3c | Для акцентных декоративных разделителей |
Для сохранения визуальной гармонии на странице рекомендуется сочетать цвет линии с другими элементами интерфейса и избегать чрезмерно контрастных комбинаций, которые могут отвлекать пользователя.
Настройка отступов и ширины горизонтальной линии
Ширина горизонтальной линии <hr> управляется свойством width. Для разделителей, занимающих весь блок, используют width: 100%, для декоративных линий – 50–70% с центровкой через margin: 0 auto. Пример:
hr { width: 60%; margin: 20px auto; }
Отступы сверху и снизу регулируются с помощью margin-top и margin-bottom. Для текстовых разделителей достаточно 10–15 пикселей, для визуально выраженных блоков – 20–30 пикселей:
hr { margin-top: 15px; margin-bottom: 15px; }
Совмещение ширины и отступов позволяет создавать линии, гармонирующие с макетом. Например, узкая линия в центре блока с большим вертикальным отступом привлекает внимание к ключевым секциям, не перегружая страницу.
Для адаптивного дизайна рекомендуются относительные единицы, такие как %, vw и em, чтобы линия корректно масштабировалась на разных экранах:
hr { width: 50%; margin: 2em auto; }
Добавление стилей границы и штриховки

Для изменения внешнего вида <hr> используется свойство border. Полосы могут быть сплошными, пунктирными или штриховыми через значения solid, dashed и dotted. Пример сплошной линии:
hr { border: none; border-top: 2px solid #2c3e50; }
Для штриховки достаточно заменить solid на dashed или dotted, при этом можно менять цвет и толщину линии:
hr { border: none; border-top: 3px dashed #16a085; }
Можно комбинировать разные стили границы, используя border-style и border-width, чтобы создавать необычные декоративные линии. Например, тонкая пунктирная линия с контрастным цветом выделяет отдельные блоки текста.
Для визуального разнообразия применяют псевдоэлементы ::before и ::after, которые позволяют добавлять небольшие символы или дополнительные штрихи поверх основной линии без изменения HTML-разметки.
Применение градиентов к hr

Градиенты позволяют создать визуально динамичные горизонтальные линии <hr>. Для этого используют свойство background с функциями linear-gradient или repeating-linear-gradient. Пример плавного перехода между двумя цветами:
hr { border: none; height: 4px; background: linear-gradient(to right, #3498db, #2ecc71); }
Для создания повторяющихся узоров подходит repeating-linear-gradient, который чередует цвета через заданный шаг. Например:
hr { border: none; height: 3px; background: repeating-linear-gradient(to right, #e74c3c, #e74c3c 10px, #f1c40f 10px, #f1c40f 20px); }
Градиенты удобно сочетать с прозрачностью, используя rgba-цвета, что позволяет линии плавно интегрироваться в фон страницы и создавать эффект плавного перехода между блоками.
Для адаптивных интерфейсов рекомендуется проверять визуальный контраст и толщину линии, чтобы градиент оставался заметным на любых устройствах и разрешениях.
Использование теней для визуального объема
Свойство box-shadow позволяет создавать ощущение объема у горизонтальной линии <hr>. Тени делают разделитель более выразительным, особенно на светлом или однотонном фоне. Пример базовой тени:
hr { border: none; height: 4px; background-color: #34495e; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3); }
Для создания более сложного визуального эффекта можно использовать несколько теней:
- Внешние тени для придания линии объема: box-shadow: 0 2px 4px rgba(0,0,0,0.2);
- Внутренние тени для эффекта вдавленности: box-shadow: inset 0 1px 2px rgba(0,0,0,0.2);
- Комбинированные тени для мягкого перехода цвета и глубины
Рекомендуется учитывать толщину линии и контраст с фоном при добавлении теней. Слишком крупные или темные тени могут перегрузить дизайн и отвлекать внимание от основного контента.
Для адаптивного дизайна можно использовать относительные единицы и rgba-цвета, чтобы тени оставались заметными на различных устройствах:
- Толщина линии: height: 3–5px;
- Прозрачность тени: rgba(0,0,0,0.2–0.3)
- Вертикальный сдвиг и размытие: 1–3px
Оформление линий с помощью псевдоэлементов

Псевдоэлементы ::before и ::after позволяют добавлять декоративные элементы к горизонтальной линии <hr> без изменения HTML. Их используют для создания точек, штрихов, символов или дополнительных полос поверх основной линии.
Пример добавления декоративных точек по центру линии:
hr { border: none; height: 2px; background-color: #2980b9; position: relative; }
hr::after { content: «•»; position: absolute; top: -6px; left: 50%; transform: translateX(-50%); color: #e74c3c; }
С помощью псевдоэлементов можно создавать многослойные линии, сочетая разные цвета и толщины:
- Основная линия через background-color
- Верхний слой с уменьшенной высотой через ::before для визуального акцента
- Декоративные символы или текст через ::after
Для корректного отображения псевдоэлементов важно задавать position: relative для hr и использовать точные значения top, left и transform для выравнивания. Это позволяет создавать линии с уникальной структурой и интегрировать их в любой макет.
Анимация и динамическая стилизация hr

Горизонтальная линия <hr> может менять внешний вид при помощи CSS-анимаций и переходов. Свойства transition и animation позволяют плавно изменять цвет, ширину, прозрачность или градиент линии при взаимодействии пользователя.
Пример плавного изменения цвета при наведении:
hr { border: none; height: 3px; background-color: #3498db; transition: background-color 0.4s ease; }
hr:hover { background-color: #2ecc71; }
Для создания движущихся эффектов используют анимацию градиентов или изменение ширины линии:
@keyframes slide { 0% { background-position: 0 0; } 100% { background-position: 100% 0; } }
hr { border: none; height: 4px; background: linear-gradient(90deg, #e74c3c, #f1c40f, #e74c3c); background-size: 200% 100%; animation: slide 3s linear infinite; }
Динамическая стилизация позволяет выделять ключевые разделы страницы и создавать интерактивные акценты без добавления новых элементов. Рекомендуется контролировать скорость анимации и контраст цветов, чтобы эффект оставался заметным, но не отвлекал от основного контента.
Вопрос-ответ:
Как задать толщину и цвет горизонтальной линии hr?
Толщина линии управляется через height, а цвет можно задать с помощью background-color или border-color. Пример: hr { height: 3px; background-color: #3498db; border: none; } создаст синюю линию толщиной 3 пикселя. Для более сложного оформления можно использовать градиенты.
Какие методы существуют для изменения ширины и отступов hr?
Ширину линии задают через width, а вертикальные отступы через margin-top и margin-bottom. Для центрирования линии используют margin: 0 auto. Пример: hr { width: 50%; margin: 20px auto; }. Относительные единицы, такие как %, позволяют линии корректно масштабироваться на разных устройствах.
Как изменить вид горизонтальной линии hr без добавления новых элементов?
Для изменения вида линии достаточно использовать CSS. Свойства height и background-color позволяют регулировать толщину и цвет линии. Пример: hr { height: 3px; background-color: #2980b9; border: none; }. Дополнительно можно применять градиенты через background для создания переходов цвета.
Какие варианты расположения и ширины hr подходят для разных блоков контента?
Ширина линии задается через width, а отступы — через margin-top и margin-bottom. Для центрирования на странице используют margin: 0 auto. Пример: hr { width: 70%; margin: 25px auto; }. Для блоков текста ширина 50–70% выглядит гармонично, для разделителей между секциями можно использовать 100%.
Можно ли создавать декоративные линии с пунктиром или штриховкой?
Да, через свойство border-style можно задавать dashed или dotted. Например, hr { border: none; border-top: 2px dotted #16a085; } создаст пунктирную зеленую линию. Толщину и цвет можно менять независимо, чтобы линия сочеталась с дизайном страницы.
Как применить градиент к горизонтальной линии hr?
Используется свойство background с linear-gradient. Пример: hr { border: none; height: 4px; background: linear-gradient(to right, #3498db, #2ecc71); } создаст линию с плавным переходом от синего к зеленому. Для декоративных эффектов можно использовать repeating-linear-gradient, чтобы сделать чередующиеся полосы.
Какие анимации можно добавить к hr для интерактивного эффекта?
Через transition и animation можно менять цвет, ширину или движение линии. Например, плавное изменение цвета при наведении: hr { background-color: #3498db; transition: background-color 0.4s; } hr:hover { background-color: #2ecc71; }. Для динамических линий можно анимировать градиент или смещение фона.
