Рамка для текста html
Информация, которую ищут пользователи, должна вызывать интерес. Но кроме нее еще важна и визуальная составляющая, в каком виде представлен контент. При оформлении сайта мейкеры интересуются какими способами можно поменять размеры, цвет и стиль шрифта, как корректировать заголовки. Да, это действительно может сделать текст более запоминающимся. Но существует другой способ привлечь внимание к важной информации – рамка.
Задачи рамки
Этот элемент не обладает специфическими функциями. Но текст, обрамленный в стильную рамку, сразу бросается в глаза и вызывает интерес у посетителей сайта. Не упускайте такой действенный инструмент, чтобы акцентировать внимание читателей на важной информации.
Создание рамки HTML
Рамку можно построить для каждого html элемента, не завися от того используется h1, p, img, span или другой тег. Но рамки блочных и встраиваемых элементов отличаются.
Если она встроена и заключена внутри тегов, т.е. html код, который отвечает за ее отображение находится в середине атрибута. В этом случае для html рамки, расположенной вокруг текста, следует прописывать внутренние отступы. Ширина блочных рамок, напротив, формируется согласно ширине блока, что требует ввода ограничений этого параметра.
Чтобы создать блочную рамку, вписав в нее текст, к данному селектору добавляется свойство border. Пример: если к тексту применим тег p, то следует установить определенный стиль.

Необходимо учесть, что когда документ состоит из 2-3 или более абзацев, то вокруг каждого появится рамочное обрамление. В данном случае правильней применить тег div и установить для него стиль, а текст вставлять уже внутрь данной «конструкции».
Чтобы разместить текст в рамке html не обойтись без встроенных стилей. Этот метод подходит, когда следует акцентировать внимание на нескольких отдельных предложениях, абзацах и изображениях.
Рамка CSS
Когда нужно выделить определенный участок шаблона рамкой, который располагается на всех страницах сайта, практичнее воспользоваться style.css. При этом применяются различные способы. В первую очередь свойства border или outline, они считаются наиболее универсальными и практичными. Также интересный эффект достигается благодаря box-shadow, В первую очередь его применяют в создании тени.
Outline
Является наиболее простым свойством для построения рамок. Его параметры аналогичны border, но внешний вид имеет особенности.
| border | outline |
| выводится внутри объекта | вокруг |
| добавляется к ширине и высоте элемента | не влияет на геометрию |
| допустимо использовать для 1 из сторон или для всех одновременно | устанавливается только целиком, нельзя расположить для 1, 2 или 3 сторон |
| благодаря свойству border-radius задает скругление углов | функция не работает |
В большинстве случаев можно ограничиться использованием border. Но без outline не обойтись для:
- добавления рамки при наведении курсора на объект;
- создания разноцветных и сложных рамок;
- сокрытие рамки, которую браузер добавляет автоматически, при получении фокуса.

Также, при использовании outline есть возможность задавать размеры промежутков от края объекта до рамки, применив outline-offset. Это позволяет создавать интересные дизайнерские решения.
Использование :hover
Добавляя html рамку и применяя border, ширина элемента визуально увеличивается. Данные изменения сильно бросаются в глаза при сочетании с псевдоклассом :hover. Существует 2 способа исправить это.
Наиболее простой – использовать outline. Но outline не всегда подходит. Ведь данный атрибут не позволяет скруглять уголки или ставить у рамки меньше 4-х сторон.
Суть второго метода в создании невидимой рамки (цвет совпадает с фоном) и изменении ее параметров при наведении курсора. В этом случае смещения нет, ведь рамка изначально существует. Но следует учитывать, высота объекта — сумма значений border вверху, border внизу и height. Ширина элемента определяется аналогично.

Box-shadow
Изначально box-shadow использовался только для создания теней вокруг предмета. Но с помощью данного свойства можно строить рамки, которые нереально делать, используя другие способы. Эффект достигается за счет возможности размещать неограниченное количество теней. Для построения каждой следующей «рамки» ее свойства просто вводятся через запятую.
Чтобы создать желаемую непрозрачную, симметричную рамку в первых трех параметрах, отвечающих за расположение тени относительно объекта и ее размытие, устанавливают 0. В четвертом – указывается желаемая толщина, в пятом – цвет.

Но обратите внимание: для корректного отображения задавая толщину необходимо в параметрах к желаемой толщине «рамки» прибавить толщину всех предшествующих ей теней.
Комбинацией этих свойств CSS возможно добиться наиболее правильного отображения и выделения информации для более интуитивного взаимодействия пользователей с контентом.
Как установить границы текста в html
Sometimes we need to create text and adding the outline to the text. There are mainly two methods to create a border to the fonts which are listed below:
- Using text-shadow property
- Using text-stroke property
Method 1: Using text-shadow property: The text-shadow property is used to add font border or shadow to the text.
Syntax:
Property Values:
- h-shadow: It sets horizontal shadow around the font.
- v-shadow: It sets the vertical shadow around the font.
- blur-radius: It sets the blur radius around the font.
- color: It sets color around the font.
- none: It does not set anything around the font.
- initial: It sets the font border to its default value.
- inherit: It inherits the property values from its parent values.
Return Value: It returns a font border/shadow around the text.
Example 1: This example uses text-shadow property to create shadow to the text.
Все о свойстве border
Все знакомы с css параметром border, но есть ли вещи, которые мы не знаем о нем?
Основы
Всем знакомо такое использование:
Это однопиксельная сплошная рамка. Немного меняем синтаксис:
Например у параметра border-width есть три параметра: thin, medium, thick:
Если необходимо менять цвет границы при наведении на объект:
Но так это реализовать проще и правильнее:
Border-Radius
border-radius — это новый параметр CSS3 для отображения закругленных углов, который корректно работает во всех современных браузерах, за исключением Internet Explorer 8 (и более старых версий).
Для каждого угла можно назначить свое закругление:
В приведенном примере необязательно назначать «0» border-top-right-radius и border-bottom-left-radius, если они не наследуют значения, которые должны быть изменены.
Всю конструкцию можно сжать в одну строку:
А вот как можно нарисовать лимон средствами CSS:
Здесь описаны самые простые и популярные примеры применения параметра border. Перейдем к более сложным.
Несколько границ
Border-Style
solid, dashed, and dotted — самые популярные значения параметра border-style, но давайте рассмотрим другие, например, groove and ridge.
Или более подробно:
Outline
Самый популярный способ создания двойной границы — это параметр outline:
Этот способ отлично работает, но ограничен созданием двойной рамки. Если вам необходимо отобразить несколько границ элемента, то необходимо использовать другую технику.
Псевдоэлементы
Можно использовать такую конструкцию:
Возможно это не самое элегантное решение, однако оно работает
Box-Shadow
Еще один способ, с применением теней:
Изменение углов
К параметру border-radius можно применять два значения, используя "/", например:
Это то же самое, что:
Эта техничка бывает полезна, если необходимо имитировать искривление, а не закругление. Например, так можно получить эффект скрученной бумаги:
CSS фигуры
В следующих примерах предполагается такая разметка:
И такой базовый css:
Наиболее частым примером использования CSS фигур является отображение стрелок. Чтобы понять, как это работает, необходимо разобраться с использованием отдельного border-color для каждой стороны и установкой значения «0» для width и height:
Или то же самое:
А теперь оставляем только синий треугольник:

Создание Speech Bubble
Наша базовая разметка:
Теперь нужно расположить стрелку-треугольник в нужном месте. Вот наш цветной квадратик:
Оставляем только четверть квадратика:
Теперь перемещаем ниже и закрашиваем:
Примеры применения:
Вертикальное центрирование текста
минус использования line-height при вертикальном центрировании в ограничении текста одной строкой. Для решения этой проблемы, можно применить display: table к нашему Speech Bubble и display: table-cell к тексту:
Еще один пример нестандартного использования границ:
Text border using css (border around text)
Is there a way to integrate a border around text like the image below?

5 Answers 5
Use multiple text shadows:

Alternatively, you could use -webkit-text-stroke, which produces a slightly different result because it modifies the stroke width instead of adding additional shadows around the text. Despite the webkit prefix, it works in most browsers (including Firefox) as of 2022:

Also, read more at CSS-Tricks.
Sure. You could use CSS3 text-shadow :
However it wont show in all browsers right away. Using a script library like Modernizr will help getting it right in most browsers though.
![]()
I don’t like that much solutions based on multiplying text-shadows, it’s not really flexible, it may work for a 2 pixels stroke where directions to add are 8, but with just 3 pixels stroke directions became 16, and so on. Not really confortable to manage.
The right tool exists, it’s SVG <text> The browsers’ support problem worth nothing in this case, ’cause the usage of text-shadow has its own support problem too, filter: progid:DXImageTransform can be used or IE < 10 but often doesn’t work as expected.
To me the best solution remains SVG with a fallback in not-stroked text for older browser:
This kind of approuch works on pratically all versions of Chrome and Firefox, Safari since version 3.04, Opera 8, IE 9
Compared to text-shadow whose supports are: Chrome 4.0, FF 3.5, IE 10, Safari 4.0, Opera 9, it results even more compatible.