vue-router:如何从router-link删除下划线

rpi*_*var 6 css vue.js vue-router vuejs2 routerlink

这样会产生带下划线的链接:

<li><router-link to="/hello">Hello</router-link></li>
Run Code Online (Sandbox Code Playgroud)

我的理解是该router-link元素生成一个a标签。

我在CSS中尝试了以下方法:

router-link{
    text-decoration: none;
}
Run Code Online (Sandbox Code Playgroud)
router-link a{
    text-decoration: none;
}
Run Code Online (Sandbox Code Playgroud)
router-link a{
    text-decoration: none !important;
}
Run Code Online (Sandbox Code Playgroud)

..但不幸的是,这些都不起作用。

Win*_*ers 21

如果任何使用 Vuetify 的人遇到这个问题,请注意,由于 Vuetify 的内置样式,上面的样式答案不起作用。您必须改为使用内联 CSS 样式:

<router-link
 style="text-decoration: none; color: inherit;"
 to="/hello" }}">
Run Code Online (Sandbox Code Playgroud)


JPi*_*son 17

它被转换成<a ...
所以删除下划线试试这个

a { text-decoration: none; }
Run Code Online (Sandbox Code Playgroud)


小智 13

您可以使用路由器链接的标签属性来使用 li css 类,如下所示:

<li><router-link tag="li" to="/hello">Hello</router-link></li>
Run Code Online (Sandbox Code Playgroud)

该链接现在将使用 li css 属性,但仍像普通路由器链接一样工作。


SLa*_*aks 10

Vue 组件标签不会生成 HTML 标签。
在 DOM 检查器中查看实际存在的 HTML 标签。

您需要使用常规类名。

  • 啊,我明白你在说什么了。`router-link` 变成了 `a`。CSS 中的 `li a { }` 似乎有效。谢谢。 (6认同)

Emm*_*ent 9

您可以尝试定位列表项链接,如下所示:

li a {
    text-decoration: none;
}
Run Code Online (Sandbox Code Playgroud)


小智 5

向 router-link 标签添加一个类:

<router-link class="routerLink" to="/hello">Hello</router-link>
Run Code Online (Sandbox Code Playgroud)

然后将 css 提供给类:

.routerLink{
     text-decoration: none;
 }
Run Code Online (Sandbox Code Playgroud)

这应该有效:)