標籤:

為什麼很多博客的編輯界面,用來表示一段話的開頭空兩格要按七次空格鍵才夠位置?


用一串半形空格來為段首提供空格/縮進是 無 比 骯 臟 的行為,這在中文 web 開發者和中文網民里是很常見的壞習慣。明明可以用兩個全形空格(全形空格的寬度和漢字一致)。

半形空格的寬度和漢字寬度無關(漢字寬度等於字型大小,比如 14 px 的文本中一個漢字的寬度就是 14 px),有的字體中半形空格寬,有的字體中半形空格窄,同一款字體在不同字體渲染環境下寬度也會變化。你以為 4 個半形空格就和 1 個漢字一樣寬,但換個地方就不是這樣了。所以任何時候都不應該用半形空格做這種事情。

而且健康的編輯器大多不會把空格轉換為 NBSP,所以一長串空格在顯示時會被合併為一個空格。這就是 @望月 說的「即使你在編輯器里搞再多的空格,主題也是不認的」。

公認的最佳方案就是 @望月 說的 p { text-indent: 2em; }。這個方案把段首空格視作樣式,與文本內容分離。

如果你無力操縱 CSS,就在段首用全形空格吧,這方案也可以接受。

關於 NBSP,這兩個問答中也有涉及,若是感興趣可以看看:

  • 製作前端頁面的時候,使用 nbsp; 當作空格和使用 white-space: pre 的原生空格有什麼區別?哪個更好一些?http://www.zhihu.com/question/19895400

  • 應該如何設置 CSS 才能避免出現這種如下圖所示的換行問題? http://www.zhihu.com/question/20127455

關於中文的段首空格習慣,還可以看看這個問答:

  • 寫文章時段首空兩格是從何時開始的?為什麼這樣設計? http://www.zhihu.com/question/19572531


這個主要是和博客主題(theme)有關,以wordpress為例,有些主題,即使你在編輯器里搞再多的空格,主題也是不認的。也許是因為國外的文章沒有段首空兩個字的習慣?

用代碼可以輕鬆的實現,比如在CSS中加入p {text-indent:2em;}這樣就可以實現所有的分段地方段首空兩格。


推薦閱讀:

如何成為科技博客編輯?
筆戈科技的預熱是怎麼把讀者預期玩壞的?
建築類的獨立博客或網站有哪些推薦?
簡書有人被打賞了嗎?

TAG:博客 |