#css #underline
#css #подчеркивание
Вопрос:
Я пытаюсь выполнить этот стиль подчеркивания, но все, что я пытаюсь, не работает. Вот ссылка на фактический веб-сайт, на котором я нашел это. https://www.timeout.com/newyork/music/best-music-videos-of-all-time
Комментарии:
1. Что вы пробовали до сих пор?
2. вы можете добавить div под словами и присвоить ему
margin-top: -10
или какое-либо другое отрицательное значение вместо использования границы3.На этом сайте это дочерний элемент an
<h3>
, и он имеетbackground-image: linear-gradient(to right, rgba(211,26,34,0.5) 0%, rgba(211,26,34,0.5) 100%); background-position: 0 0.84em; background-repeat: repeat-x; background-size: 1px 15px;
примерно такое значение. Смотрите Очень полезные инструменты веб-разработчика Chrome — Просмотр и изменение CSS.
Ответ №1:
Как правило, лучше всего показать нам, что вы пробовали, чтобы мы могли помочь вам понять концепцию или исправить любые допущенные вами ошибки. Идея состоит в том, чтобы иметь текст с другим элементом под ним, который имеет отрицательное верхнее поле. Существуют и другие подходы для достижения того же самого, каждый подход будет иметь свой вариант использования и плюсы / минусы.
В коде концепция выглядит примерно так:
.border-bottom {
width: 100%;
height: 10px;
background-color: red;
margin-top: -30px;
}
<div>
<h2>
bla bla bla
</h2>
<div class='border-bottom'>
</div>
</div>
Ответ №2:
Вы можете добиться такого вида с помощью псевдоэлемента, поместив его в нижней части «родительского» элемента и установив для него z-index
значение -1
.
Смотрите здесь: https://codepen.io/anon/pen/JVNjLX
.link {
position: relative;
font-family: Roboto, sans-serif;
font-weight: 900;
font-size: 32px;
text-decoration: none;
color: #333;
display: inline-block;
}
.link::before {
content: "";
width: 100%;
height: 16px;
background-color: pink;
display: block;
position: absolute;
bottom: 2px;
z-index: -1;
}
<a class="link" href="#0">
Radiohead, Karma Police
</a>
Конечно, вы можете поиграть со значениями, чтобы получить именно тот вид, который вам нужен, и даже анимировать псевдоэлемент при наведении курсора мыши и т. Д.
Веб-сайт, на который вы ссылались, фактически выполняет этот эффект с помощью градиентного фонового изображения на элементе. Довольно гладко.
Вы можете проверить это в действии здесь: https://codepen.io/anon/pen/ZZKEwE