2012-09-13 148 views
0

我認爲html應該在內聯標記(如<a>one</a><a>two</a>)之間製作空格,但它似乎只在這些標記之間存在行結束時才起作用。請看看我的示例:http://jsfiddle.net/pwF7f/保留標記之間的空格HTML

那麼即使元素位於同一行上也可能有這個空白符?

+1

你的意思是你期望在'a'元素內的文本位之間看到一些空格嗎?你需要插入一些你想看到的空間。 – Oded

回答

2

HTML不會在源代碼中發現空格。你可以總是說:

<a>one</a> <a>two</a> 

,如果你想空白。

2

這不是一個空白但是嘗試<a>one</a>&nbsp;<a>two</a>

<a>one</a>&nbsp; 
<a>two</a> 

如果你想有一個非打破空間

在我看來它比<a>one</a> <a>two</a>更靈活。

您可以創建例如像這樣

<a>one</a>&nbsp;|&nbsp; 
<a>two</a>&nbsp;|&nbsp; 
<a>three</a>&nbsp;|&nbsp; 
<a>four</a> 

與此代碼比較:

<a>one</a> | <a>two</a> | <a>three</a> | <a>four</a> |

在html中使用php echo時還存在其他問題。那麼&nbsp;是必須的。

+0

好的謝謝,但是我正在尋找一些簡單的東西,因爲我不''想重寫我的xslt文件:D,但它似乎我沒有選擇 – david

0

除了在元素之間放置空格或不打破空格外,還可以使用CSS創建水平間距,例如,通過在第一個元素上設置padding-right: 0.5em

還有就是爲什麼相鄰的內聯元素都被視爲真正相鄰的一個原因,他們之間沒有任何空白:在這裏你真的想有一些情況是,如ñ(應該呈現爲在「第n」具體風格,而不是「第n」)。

這是一箇舊的可訪問性建議,在連續鏈接之間應該有一些非空白字符。這並不像它最初提供的那樣必要,但是要制定一個很好的指導方針 - 當然,至少應該有一些空格。

+0

我也有這個想法,但對我來說這是不可能的,因爲我的html是通過XSLT生成,並有它噸的鏈接,我需要有空間時,只有當兩個鏈接並排 – david

+0

是的,使用CSS也是一種可能性,但是,當CSS是缺少它會得到錯誤。例如。在RSS或一些奇怪的或舊的瀏覽器和設備上。 – Derfder

+1

@david,你可以使用例如'a + a {padding-left:0.5em; }'只有當'a'元素前面有'a'元素時才添加左邊的填充。 (相鄰的兄弟選擇器'+'適用於所有現代瀏覽器,甚至IE 7)。但我同意@Derfder最好在內容中有一個空格(或另一個分隔符) –