Я пытаюсь понять, как создать собственный фоновый эффект для текста. Другими словами, как я могу сделать что-то вроде этого:
Как я могу создать собственное подчеркивание или выделение текста в html или css?
Ответы (4)
Используйте элемент ‹mark> и настройте высоту строки
mark {
display: inline-block;
line-height: 0em;
padding-bottom: 0.5em;
}
<h1><mark>Lorem ipsum</mark></h1>
marquee
. Кроме того, оказывается, я достаточно взрослый, чтобы думать, что...
- person somethinghere; 28.04.2017
В очень хорошей статье объясняется хороший способ сделать это с помощью градиентов: https://thirtyeightvisuals.com/blog/low-highlight-heading-links-squarespace
.highlight {
background: linear-gradient(180deg,rgba(255,255,255,0) 50%, #FFD0AE 50%);
}
Для этого я обычно использую SVG-пиксель (растягивающийся SVG-код в формате HTML 1x1 с цветом заливки), которым мы можем управлять так, как захотим:
h1 {
background: url("data:image/svg+xml;charset=utf8,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' x='0px' y='0px' width='1px' height='1px' viewBox='0 0 1 1' preserveAspectRatio='none'%3E%3Crect x='0' y='0' width='1' height='1' fill='red' /%3E%3C/svg%3E") no-repeat 100% 100%;
background-size: 100% 50%;
}
<h1>My Text</h1>
Это также позволяет легко добавлять анимации. Однако это работает только для однострочных элементов. Вы можете изменить цвет внутри свойства svg fill
. В закодированном виде он работает в IE9+, так что вполне совместим! Просто помните, что знак решетки перед шестнадцатеричными цветами также должен быть закодирован - его %23
(лично я использую sass для его кодирования для меня).
Попробуйте изменить размер строки. Высота линии. А затем выделить текст.
line-size
? И как line-height
на это влияет? Это не так.
- person somethinghere; 28.04.2017