2016-03-24 87 views
0
<div id="divright"> 
lorem ipsum 
lorem ipsum 
lorem ipsum 
</div> 

CSS如何避免預格式化文本的空行

#divright{ 
    white-space:pre; 
} 

有因爲white-space:pre格式化在他一個額外的空行頂部的divright內容。

我該如何避免這個空行。

我試過css display:none - 不起作用。

回答

2

如果你有機會到HTML,簡單地將其刪除:

<div id="divright">lorem ipsum 

如果你知道,總會有一個換行,你知道行高,拉動全要素一行更高:

#divright { 
    margin-top: -20px; /* -1 x current line-height */ 
} 

CSS4的white-space-collapse屬性會持續一段時間,直到它準備在這裏保存我們。

對於contenteditable元素,您可以聽取the input event,並在每次用戶嘗試添加時用Javascript修剪掉引導換行符。

#divright{ 
    white-space:normal; 
} 

#divright{ 
    white-space:nowrap; 
} 

應該刪除空行:

+0

謝謝,但我後來需要'divright' contenteditable,所以在這種情況下光標是隱藏的。 – bonaca

+1

管道中有一個名爲'white-space-collapse'的屬性,但它不會觸及你附近的瀏覽器,直到我們都期待退休:http://stackoverflow.com/a/2629446/113195 – Boldewyn

0

第一線

<div id="divright">lorem ipsum 
lorem ipsum 
lorem ipsum 
</div> 
+0

我可以刪除它使用JavaScript? – bonaca

+1

是的,嘗試通過id獲取div,在其內部html中調用trimleft。 var newtext = document.getElementById(「divright」)。innerHTML; newtext = newdiv.trimLeft(); document.getElementById(「divright」)。innerHTML =「newtext」; – AnatPort

+0

非常感謝,它的工作原理。 – bonaca

0

我認爲你應該使用之前只刪除實際工作空間。爲了更多的幫助看看W3C-Css Tutorial.

+0

謝謝,但有一個理由保持'白空間:預' – bonaca