Два способа "прошить" элемент по краю
Есть два способа сделать эффект, как будто элемент прострочили на швейной машинке: используя псевдоэлементы и с помощью outline
.
Outline
Плюс:
- не требует дополнительных элементов.
Минус:
- не воспринимает
border-radius
, следовательно, способ не походит для элементов со скругленными углами.
Кроме того, свойство своеобразно ведет себя в Firefox: outline
реагирует на размеры и положение тени.
Псевдо-элементы
Во-первых, нам потребуется обертка для текста, чтобы потом слой с текстом можно было поднять выше псевдоэлемента с рамкой.
Во-вторых, общей обертке и контейнеру с текстом надо будет задать position: relative;
.
После этого создаем псевдоэлемент и рисуем рамку:
Результат:
Плюс:
- может иметь скругленные углы.
Минус:
- требует дополнительную разметку и больше кода
- Метки:
- рамки,
- псевдоэлементы,
- рисование на CSS