在我的导航中,我需要' .active'告诉用户他们是否在当前页面中。所以我定义了一个帮助器来动态生成li.active
。
def nav_link(link_text, link_path
class_name = current_page?(link_path) ? 'active' : nil
content_tag(:li, :class => class_name) do
link_to link_text, link_path
end
end
所以它可以生成
<li class="active">
<a href="/resources">Resources</a>
</li>
但是,对于一个特定的链接,我想将<strong>
添加到<a>
内的<li>
,以使其与其他链接脱颖而出。我该怎么办?
<li class="active">
<strong><a href="/resources">Resources</a></strong>
</li>
更新: 从这个
到此
每个导航链接(例如new
,resources
,videos
)都使用nav_link
帮助程序。我需要的是一种在resouces
链接中插入一些html(或CSS)的方法。让它脱颖而出。
答案 0 :(得分:1)
你能不能在css
进行更改?
.active {
font-weight: bold;
}
您当然可以嵌套content_tag
来添加strong
节点:
def nav_link(link_text, link_path, additional_class = nil)
class_name = current_page?(link_path) ? 'active' : nil
content_tag(:li, :class => class_name) do
content_tag(:strong) do
link_to link_text, link_path
end
end
end
更新
您可以检查&#34;资源&#34;如下添加strong
标记:
def nav_link(link_text, link_path, additional_class = nil)
class_name = current_page?(link_path) ? 'active' : nil
content_tag(:li, :class => class_name) do
link = link_to(link_text, link_path)
if link_text == 'Resources'
content_tag(:strong) { link }
else
link
end
end
end