【发布时间】:2019-04-19 21:29:38
【问题描述】:
Bootstrap 的 CSS 在 <nav class="navbar-nav"> 内的 <li> 内时自动将漂亮的外观应用于 <a> 标记。我需要在带有href="#" 的可点击<a> 标记上具有这样漂亮的外观,它执行一些javascript。
但是我也在使用 React,当 <a> 标签的 href 为 # 时,它会引发警告 (see here)。所以根据this:
但是,我们知道开发人员并不总是能够完全控制 Web 应用程序的视觉设计。如果必须提供一个类似于锚点的元素,该元素纯粹充当点击目标而没有导航结果,我们建议采用折衷方案。
再次将元素更改为
<button
type="button"
className="link-button"
onClick={() => this.setState({showSomething: true})}>
Press me, I look like a link
</button>
然后使用样式将其外观更改为链接的外观:
.link-button {
background-color: transparent;
border: none;
cursor: pointer;
text-decoration: underline;
display: inline;
margin: 0;
padding: 0;
}
.link-button:hover,
.link-button:focus {
text-decoration: none;
}
这会起作用,只是 Bootstrap 不再将 CSS 应用到它上面。我是否需要手动将 CSS 添加到按钮中,还是我遗漏了什么?
似乎这样做的方法是将 CSS 添加到按钮,但我不确定。例如,有没有一种方法可以制作具有特定类功能的按钮,就像<a>s(就 CSS 而言)?
【问题讨论】:
-
你不能用
#1吗? -
@Paulie_D 什么
#1?对于 href 属性?
标签: css reactjs react-bootstrap