CSS :target pseudo-class is not applied after click on link

标签 css ruby-on-rails turbolinks

我正在使用 Rails5(带有涡轮链接)

HTML 标记:

<a href="/post/slug#target1">Target1</a>
<a href="/post/slug#target2">Target1</a>
...
<p id="target1">Content1</p>
<p id="target2">Content2</p>

CSS:

p:target {
  background-color: red;
}

问题是 :target 伪类仅在页面刷新后应用。单击链接时不应用样式。

我几乎可以肯定,这种行为是由涡轮链接引起的。如何解决这个问题?

最佳答案

我在写这个问题时找到了解决方案。

为了使事情顺利进行,我们需要向此类链接添加数据属性,如下所示:

<a href="/post/slug#target2" data-turbolinks="false">Target1</a>

此属性在每个链接的基础上禁用涡轮链接。

更多详细信息请参见:Disabling Turbolinks on Specific Links

关于CSS :target pseudo-class is not applied after click on link,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44409934/

相关文章:

ruby-on-rails - Pages#home 中的 Rails ExecJS::ProgramError?

php - 损坏的 CSS Sprite

javascript - 异步加载图像

javascript - Div 大于表格单元格

ruby-on-rails - 在 Controller 规范 (rspec) 中测试设计和 cancan

ruby-on-rails - Rails user_authentication 不起作用,find 方法总是返回 nil

html - Symfony Assetic 错误的资源类型

ruby-on-rails - to_json :include :order?

jquery - 在带有 Turbolink 的 Rails 中使用 jQuery 进行长轮询

css - 在不同 Controller 中加载不同布局时样式表损坏