Как сделать вертикальную линию HTML?
Категория: Сайтостроение, Опубликовано: 2018-06-18
Автор: Юлия Гусарь
В продолжение темы оформления контента на станицах сайта сегодня я хочу вам показать, как можно добавить вертикальную линию HTML, и тем самым выделить фрагмент текста, сделав его более заметным для посетителей.
В одной из своих прошлых статей я уже вам показывала, как можно украсить текст вертикальной линией. С этой статьей вы можете ознакомиться по этой ссылке: Горизонтальная линия HTML
Для того, что бы сделать вертикальную линию HTML есть несколько способов, но в зависимости от браузера у вас могут возникнуть проблемы с ее отображением на странице. Поэтому я покажу вам два наиболее простых способа добавления вертикальной линии HTML, которые будут у вас на 100% работать.
Навигация по статье:
- Вертикальная линия HTML
- Вертикальная линия HTML с помощью псевдоэлемента
Вертикальная линия HTML
В первом случае нам нужно обернуть предназначенный для выделения фрагмент текста или элемент на странице в тег <div>, или же использовать уже существующий блок, и для этого блока задать границу с нужной стороны.
Можно дописать стили в самом теге:
<div> <h4> Вертикальная линия HTML </h4> </div>
<div> <h4> Вертикальная линия HTML </h4> </div> |
Результат:
Вертикальная линия HTML
С помощью свойства border-left мы задаем границу блока с левой стороны, и задаем следующие параметры границы:
- 3px – толщина линии
- solid – сплошная линия.Так же можно сделать: пунктирную(dotted), прерывистую (dashed), double (двойную), вогнутую (groove), и выпуклую (ridge).
- red – это цвет границы. Его вы можете задать названием цвета, в шестнадцатеричном формате, с помощью таблицы цветов RGB или RGBA.
Подробнее о способах задания цвета и кодовых значениях цветов вы можете почитать в этих статьях:
«Изменение цвета шрифта в CSS. Коды цветов HTML и CSS»
«Как определить цвет на сайте»
Для задания границы вы можете использовать следующие свойства:
- border-left – граница слева
- border-right— граница справа
- border-top – сверху
- border-bottom – снизу
- border – граница по всему контуру блока
Свойства border-top и border-bottom можно так же использовать для задания горизонтальной линии
Так же нам нужно указать отступ текста от границы с помощью свойства padding-left, иначе он будет к ней прилипать. В моем случае отступ равен 10 пикселям.
Если вам удобнее работать с CSS стилями в отдельном файле, то для блока нужно присвоить класс и для этого класса прописать данные свойства в CSS -файле. Вот как это будет выглядеть:
HTML:
<div> <h4> Вертикальная линия HTML для текста в блоке </h4> </div>
<div> <h4> Вертикальная линия HTML для текста в блоке </h4> </div> |
CSS:
. block-vert-line{ border-left:3px solid green; padding-left:15px; }
.block-vert-line{ border-left:3px solid green; padding-left:15px; } |
Результат:
Вертикальная линия HTML для текста в блоке
Редактировать стили для сайта проще всего при помощи редактора кода NotePad++. Как с ним работать я показывала в этой статье:
Вертикальная линия HTML с помощью псевдоэлемента
Если вам удобнее работать с CSS -стилями, то вы можете воспользоваться еще одним способом добавления вертикальных линий. Данный вариант немного сложнее и заключается в использовании псевдоэлементов :before и :after. Но у псевдоэлементов есть один очень ощутимый плюс, они позволяют без добавления HTML-кода, разместить на станице, соответственно, перед блоком или после него дополнительный элемент.
Тема псевдоэлементов достаточно обширна, поэтому подробно вдаваться их описание я сейчас не буду. В ближайшее время постараюсь подготовить статью с более подробной информацией по наиболее полезным псевдоэлементам, их возможностям и применению.
Итак, если нам нужно разместить вертикальную или горизонтальную линию сверху или слевой стороны элемента, то нам нужно использовать псевдоэлемент
Вот как это будет выглядеть:
.vert-line:before{ content: » «; background: #33CCFF; width: 2px; height: 25px; float: left; margin-right: 10px; }
1 2 3 4 5 6 7 8 | .vert-line:before{ content: » «; background: #33CCFF; width: 2px; height: 25px; float: left; margin-right: 10px; } |
Результат:
Вертикальная линия без HTML
Для блока с классом vert-line мы присваиваем псевдоэлемент :before и задаем свойствами параметры элемента, который будет сгенерирован при формировании страницы. В нашем случае мы делаем вертикальную линию с шириной 2 пикселя и высотой 25 пикселей.
Так же мы задаем цвет фона (background: #33CCFF;), обтекание с левой стороны (float: left;), и отступ с правой стороны (margin-right: 10px;), чтобы отделить текст блока от линии.
Свойство content с пустыми кавычками означает, что в данном элементе ничего нет, но при необходимость вы можете поместить в него дополнительные символы или текст.
Минусом использования псевдоэлемент является то, что они могут не поддерживаться старыми версиями браузеров.
Сегодня я показала вам, как можно добавить вертикальную линию HTML, и как создавать элементы на чистом CSS. Надеюсь, данные приёмы будут для вас полезны, и вы тоже возьмете их к себе на вооружение.
А на сегодня у меня все. Не забывайте оставлять комментарии и делиться статьей в социальных сетях.
До встречи в следующих статьях!
Как добавить линию возле текста?
Тема:Линии и рамки
Internet Explorer | Chrome | Opera | Safari | Firefox | Android | iOS |
4. 0+ | 1.0+ | 4.0+ | 1.0+ | 1.0+ | 1.0+ | 1.0+ |
Задача
Добавить сбоку от абзаца текста вертикальную линию.
Решение
Можно по-разному привлечь внимание читателя к тексту. Например, сделать текст жирного начертания, изменить его цвет, использовать фон, нарисовать рамку. Но что если требуется не просто выделить текст, сколько отделить один текстовый блок от другого, разделить их на разные смысловые части? Вот тут использование линий и отступов просто неоценимо.
Текстовый блок на веб-странице сильно отличается от своего печатного собрата. Главным отличием является варьируемая ширина и высота текста, которые зависят от разрешения монитора, настроек операционной системы, браузера и других подобных вещей. Данные особенности придают верстке веб-страниц определенную сложность, но при этом порождают специфичные техники, которые намного упрощают процесс создания сайта. Рассмотрим, как можно использовать стили, чтобы создать произвольную линию возле текста, независимую от его размеров.
Для создания линий используется свойство CSS — border, которое устанавливает рамку вокруг блока. В частных случаях, для создания линии лишь с одной стороны элемента, используются свойства border-bottom, border-top, border-left и border-right, они соответственно задают линию снизу, сверху, слева и справа.
Значения этих свойств перечисляются через пробел и сразу устанавливают тип линии, её толщину и цвет. Стиль линии может принимать одно из восьми значений, как показано на рис. 1, а толщина задается, как правило, в пикселах.
Рис. 1. Типы линий
В примере 1 показано создание вертикальной линии рядом с текстом.
Пример 1. Вертикальная линия слева от текста
HTML5CSS 2.1IECrOpSaFx
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Линия слева от текста</title> <style type="text/css"> .line { border-left: 2px solid #ccc; /* Параметры линии */ margin-left: 20px; /* Отступ слева */ padding-left: 10px; /* Расстояние от линии до текста */ } </style> </head> <body> <p>Изучая с позиций, близких гештальтпсихологии и психоанализу процессы в малой группе, отражающих неформальную микроструктуру общества, Дж.Морено показал, что компульсивность дает стресс в силу которого смешивает субъективное и объективное, переносит свои внутренние побуждения на реальные связи вещей.</p> </body> </html>
Чтобы исходный стиль абзаца оставить неизменным, введён новый класс line, который устанавливает возле абзаца вертикальную линию. Данный класс, кроме того, ещё задаёт смещение 20 пикселов от левого края окна до текста с помощью свойства margin-left и отступ от линии до текста через padding-left, без него текст будет соприкасаться с линией слишком плотно. Результат показан на рис. 2.
Рис. 2. Линия слева от текста
рамки и границы
- border-bottom
- border-left
css — Разделитель вертикальной линии HTML
спросил
Изменено 4 года, 6 месяцев назад
Просмотрено 31к раз
Я создаю разделитель горизонтальных строк следующим образом:
/* разделитель строк */ . aSeparator { верхняя граница: 1px сплошная # 5f656d; высота: 1 пиксель; поле: 16px 0; }
Посмотреть его здесь: https://jsfiddle.net/xjna71pn/
Это круто, потому что остается длина окна за вычетом заполнения.
У меня вопрос, как создать вертикальный?
Я попробовал очевидное, левый край
, но это не сработало.
- HTML
- CSS
2
Это именно то, что я реализовал:
В HTML:
/* Некоторый контент, который вы хотите разместить слева от вертикальной линии.*/
В CSS:
.vertLine { граница справа: 1px # ff0000; /* ширина строки 1 пиксель, длина "Некоторого контента" */ }
Немного отличается от того, что предлагали другие, но это именно то, что я искал.
Вам не нужно указывать высоту/длину, так как это будет просто высота того контента, который вы поместите между ними. например. Если вы поместите изображение размером 100 пикселей, линия будет справа, высотой 100 пикселей.
Это работает с левой границей, но вам нужно указать большую высоту (в настоящее время установлено значение 1 пиксель).
Вам необходимо установить определенную высоту. Ваш вертикальный разделитель css будет таким:
.aVerticalSeparator { граница слева: 1px сплошная #5f656d; /* Граница слева */ ширина: 1 пиксель; /* Ширина вместо высоты */ высота: 200 пикселей; }
Чтобы он занимал всю высоту своего родителя, вы должны установить его высоту на 100%
, но у родительского элемента должна быть высота.
Вот демонстрация простого html-документа, в котором корневые элементы ( html
и body
) имеют определенную высоту, поэтому разделитель может быть заполнен до 100%.
Вертикальная линия справа от div
<дел> <ул>Пустой div не отображал строку Длина вертикальной строки зависит от содержимого в div Здесь я использую встроенный стиль. Вы можете заменить его внешним стилем или внутренним стилем.
Вертикальная линия слева от div
<дел> <ул>Пустой div не отображал строку Длина вертикальной строки зависит от содержимого в div Здесь я использую встроенный стиль. Вы можете заменить его внешним стилем или внутренним стилем.