Удалить подчеркивание от внутреннего анкера
У меня есть этот HTML:
<ul>
<li>
<ul>
<li>
<a href="#"> <span> Test </span> Link </a>
</li>
</ul>
</li>
</ul>
И этот CSS:
ul li ul li span {
text-decoration:none;
}
Почему диапазон внутри анкера все еще имеет подчеркивание?
Другими словами: Как бы я получил весь текст, подчеркнутый, кроме SPAN. Благодаря
Ответы
Ответ 1
Вам нужно настроить таргетинг на anchor tag
, а не на span tag
, поэтому используйте
ul li ul li a {
text-decoration:none;
}
Причина: text-decoration: underline;
применяется к тегу <a>
по умолчанию в таблице стилей браузера, поэтому, если вы хотите переместить его или хотите, чтобы ни один из тегов <a>
на вашем сайте не имел подчеркивания, а просто использовал это
a {
text-decoration: none;
}
Изменить: поскольку я прочитал ваш комментарий, если вы хотите, чтобы текст подчеркивался, кроме текста в <span>
, чем использовать этот
Демо
ul li ul li a {
text-decoration:underline;
}
ul li ul li a span {
text-decoration:none;
display: inline-block;
}
Ответ 2
Сделайте tat span
в классе как a
a
- это тег, который принимает подчеркивание по умолчанию, поскольку это ссылка, но не span
. Таким образом, все, что находится внутри тега, автоматически выделяет подчеркивание.
ul li ul li a{
text-decoration:none;
}
DEMO
Ответ 3
Это должно быть
ul li ul li a {
text-decoration:none;
}
ul li ul li a:hover {
text-decoration:underline;
}
ul li ul li a span {
text-decoration:none;
display: inline-block;
}
DEMO
Ответ 4
Это должно быть
ul li ul li a {
text-decoration:none;
}