2016-03-01 86 views
5

我有很多種,在我的引導導航欄顯示出來,如登錄,註冊,訪問的網頁,和註銷環節。當我使用的刪除方法中的鏈接幫助我失去了我的默認引導CSS。例如,下面的鏈接幫手:引導造型與菲尼克斯太陽隊的刪除方法

<li><%= link "Register", to: user_path(@conn, :new) %></li>

生成以下HTML:

<li><a href="https://stackoverflow.com/users/new">Register</a></li>

但是如果我想刪除方法,例如註銷時爲:

<li><%= link "Log out", to: session_path(@conn, :delete, @current_user), method: "delete" %></li>

它會產生一個形式,例如:

<li><form action="/sessions/3" class="link" method="post"> 
    <input name="_method" type="hidden" value="delete"> 
    <input name="_csrf_token" type="hidden" value="QA1vDhw/PhoBcgIwCgJJVCQPJQ4FAAAA/U8oImxsGBgDOF+crLSodA=="> 
    <a data-submit="parent" href="#" rel="nofollow">Log out</a> 
</form></li> 

現在我的錨標記位於一個表單中,我失去了我的默認CSS。

我固定它通過使用自定義類:

.bad-bootstrap-link { 
    position: relative; 
    display: block; 
    padding: 10px 15px; 
    padding-top: 15px; 
    padding-bottom: 15px; 
    color: #777; 
} 

這是做到這一點的唯一途徑?我錯過了什麼嗎?這是非常不方便的,我要重新定義CSS樣式刪除鏈接。

回答

4

我有完全相同的問題,我添加了bootstrap css類navbar-text,如下面的Bootstrap 3所示。這對我來說足夠接近。

<li><%= link gettext("logout"), to: session_path(@conn, :delete, @current_user), method: "delete", class: "navbar-text" %></li> 

對於引導4我使用的類nav-item nav-link

<li><%= link gettext("logout"), to: session_path(@conn, :delete, @current_user), method: "delete", class: "nav-item nav-link" %></li> 
+0

使用自舉類是比我好多瞭解決方案,但我希望可能有另一種解決此問題的方法。暫時擱置這個問題。 – ChrisBarthol

0

可以隱藏表單,並添加提交表單另一個鏈接。這有點哈克,但另一種方法是潛入CSS文件或潛入JS文件。

<li> 
    <%= link "Logout", to: auth_path(@conn, :logout), method: "delete", class: "hidden", id: "logout-form" %> 
    <%= link "Logout", to: "#", onclick: "document.getElementById('logout-form').parentNode.submit();return false;" %> 
</li> 
0

我解決了這個問題,下面的CSS規則:

form[method=post].link { 
    display: initial; 
} 

以前 before

after