2012-09-12 101 views
1

我正在使用Twitter Bootstrap(v2.1.1)和PHP網站。我在php腳本中動態生成導航欄,因爲如果用戶登錄或離開站點,導航欄將具有不同的內容。當我使用PHP生成站點時,我遇到了登錄表單輸入字段之間沒有正確間距的問題。這裏的登錄表單相關的PHP代碼:Twitter Bootstrap導航欄 - 表單輸入之間的空格

$loginLink .= '<form class="navbar-form pull-right">'; 
$loginLink .= '<input class="span2" type="text" placeholder="Account Name">'; 
$loginLink .= '<input class="span2" type="password" placeholder="Password">'; 
$loginLink .= '<button type="submit" class="btn">Log in</button>'; 
$loginLink .= '</form>'; 

我再呼應了這一點 - 你可以在此的jsfiddle看到的結果是:

http://jsfiddle.net/fmdataweb/PugbE/

你注意到的是賬戶之間沒有空格名稱,密碼和登錄按鈕。你可以看到這個應該怎麼看待:

http://twitter.github.com/bootstrap/examples/hero.html

我已經工作了,我如果建立這兩條線之前回車:

<input class="span2" type="password" placeholder="Password"> 
<button type="submit" class="btn">Log in</button> 

它,然後正確地呈現在瀏覽器中。

你可以看到在此的jsfiddle與這些回報的版本:

http://jsfiddle.net/fmdataweb/CqAPr/

我不知道爲什麼得到的回報也是這裏很重要,但考慮到他們的(除非我失去了一些東西)人有任何推薦用於在PHP腳本中生成所需的新行字符?

我試過增加一個
,但那樣做更糟。

回答

2

返回不是重點,因爲它實際上不是與渲染相關的返回。這是重要元素之間的空間,並且由回報「產生」。只需執行以下操作:

$loginLink .= '<form class="navbar-form pull-right">'; 
$loginLink .= '<input class="span2" type="text" placeholder="Account Name"> '; // notice space here 
$loginLink .= '<input class="span2" type="password" placeholder="Password"> '; // and here 
$loginLink .= '<button type="submit" class="btn">Log in</button>'; 
$loginLink .= '</form>'; 

...它應該沒問題。

+0

謝謝塞巴斯蒂安 - 你是對的!我認爲它需要回報,我認爲這有點奇怪。在空間中添加確實足以使其按預期工作。非常感謝 - 在這種情況下,空間不是一個問題。 – user982124

+0

另請注意,每個連續的\ n將被瀏覽器解釋爲一個  :) – Ignas