下記のコードで、 controller.controller_name == "posts" && controller.action_name == "index"
の時に、1つ目以外のタブが押せなくなります。
class="active
がついているいないに関わらず1つ目以外です。
cssに display: fixed
を書き足すと症状が現れます。
↓html
<ul class="nav nav-pills nav-posts"> <% if controller.controller_name == "posts" && controller.action_name == "index" %> <li role="presentation" class="active"><%= link_to 'ホーム', root_path %></li> <li role="presentation"><%= link_to 'タイムライン', timeline_path %></li> <li role="presentation"><%= link_to '検索', search_users_path %></li> <% elsif controller.controller_name == "users" && controller.action_name == "index" %> <li role="presentation"><%= link_to 'ホーム', root_path %></li> <li role="presentation" class="active"><%= link_to 'タイムライン', timeline_path %></li> <li role="presentation"><%= link_to '検索', search_users_path %></li> <% else %> <li role="presentation"><%= link_to 'ホーム', root_path %></li> <li role="presentation"><%= link_to 'タイムライン', timeline_path %></li> <li role="presentation" class="active"><%= link_to '検索', search_users_path %></li> <% end %> </ul>
↓css
.nav-posts { position: fixed; }