2013-06-24 63 views
0

當我創建simple_form_for一種形式,它把標籤和輸入的下方,如下所示:
simple_form_for,具有在同一行上的標籤和輸入

名稱
_ _

但我想他們是:

_ _

如果我看着生成的HTML,我看到:

<div class="input string optional name"> 
    <label class="string optional" for="name">date from</label> 
    <input class="string optional" id="name" name="anf[name]" size="50" type="text" value=""> 
</div> 

,但我不明白的地方,在款式,有這使得它打破了線的設置;這是它的計算風格:

color: rgb(51, 51, 51); 
display: block; 
font-family: verdana, arial, helvetica, sans-serif; 
font-size: 13px; 
height: 65px; 
line-height: 18px; 
width: 940px; 

無論如何,有沒有辦法來定製這個simple_form_for的外觀?

回答

2

下面是我用在標籤和輸入都在同一行SimpleForm例子...

HTML

<%= simple_form_for(@proteam) do |f| %> 
    <%= f.input :name %> 
    <%= f.input :city %> 
    <%= f.input :mascot %> 
    <%= f.button :submit %> 
<% end %> 

CSS

.simple_form label { 
    float: left; 
    width: 100px; 
    text-align: right; 
    margin: 2px 10px; 
} 

.simple_form div.input { 
    margin-bottom: 10px; 
} 

這基本上來自http://railscasts.com/episodes/234-simple-form-revised

+0

好的,但用float:left,如果我在同一行有更多的控件,比如說(label-1)(field-1)(label-2)(field-2)所有的標籤在第一個開始行:(label-1)(label-2)(field-1)(field-2)。啊哈!這不是我想要的。替換爲display:inline-block;討厭試驗和錯誤的方法。 – AgostinoX

1

我想這是規則

display: block; 

將其更改爲

display: inline 

,以防止標籤打破了線。

+0

好的,但它在SimpleForm體系結構中的位置? – AgostinoX

+1

我不認爲simple_form爲你添加了CSS,所以我猜你從某個框架繼承了那個代碼? –

相關問題