« 表演工作坊作品-《台湾怪谈》下载 | 首页 | 新?模板--有些事 »

让段落起始自动空两格的方法

其实这是从我开始写blog(你以为是07年?)开始就注意到的一个问题:几乎所有的blog系统(实际上是模板的问题)中,文章段落的首行都没有空两格,而这是中文书写的一个基本要求。

我们先不谈无聊的东西,直接说这种段首空两格的实现方法。

其实方法有很多种,但几乎就没见过几个人在用。我所看到的有这几种:

1.每次都手工输入空格,但一定要用全角的空格,否则是没用的,Via。但是,我们的标题是让段首自动空两格,要是拿这种方法来教人,根本就是挂羊头卖狗肉嘛。

2.在CSS中使用text-indent,例如 p {text-indent: 2em}。text-indent这个属性我不是很常用,只是大概看得懂是什么意思。方法来自这里

3.我自己在用的方法(今天刚开始用),想法来自前段时间在Jorux那里看到的一篇文章:引号是可以成对的。既然"first-letter"可以对首字母指定特殊的属性,那让段落首字母padding-left:26px不就行了(假定你的字体大小是13px) 。昨晚没考虑到字间距的问题,只以我这里的样式为基础用了padding-left:26px,确实不太合适,还是用2em比较好(px这个单位也许是该慢慢淘汰了,谢谢dimlau及高级马甲用户张西西斧正)。所以,很简单的在styles-site.css中添加一句:

.entry-content p:first-letter{padding-left:2em;}

使用.entry-content类进行选择,因为我们基本上只需要在文章中使用这种空格,其他地方自动空格反而可能带来一堆麻烦。

4.把方法3中的padding-left:2em那部分换成一张尺寸合适的空白图片也行,但你觉得真的会有人那样做吗?:)所以,第四种、第五种。。第N种方法就是我不知道的方法。有知道的还望不吝赐教,多学一点东西对我来说还是很有必要的,谁让我不是高手,什么都可以学呢。

注意!以下为极度无聊的评论部分,建议直接跳过。

其实这个段落首行空格的问题两年前就有人讨论过了:

分别是Link1,Link2,Link3,抱歉我一个都不想trackback,虽然我顶三号。

真搞不懂为什么一定要把那个所谓的EST分段格式(好像就是增大段和段的垂直距离)和传统空格分段法对立起来呢?这个问题就像统独问题一样没有意义,你愿意用哪种就用哪种呗。我就爱两种一起用,这又有什么关系?传统和西方的东西就一定要是你死我活不可共存?

中国人什么时候可以不再讨论这种无聊的问题去做一点实际的事情?借根葱都要开个会讨论,这种讨论与其说是言论自由或民主,倒不如说是....操,我找不出合适的话来形容这种行为,因为这在我看来太不可思议。

FeedBack

引用地址:40

dimlau1:


你的方法不错
对首字符样式的支持。。IE5.5以上才行(不知道还有没有用以下的)

至于padding的距离,直接2em,或者200%多直观
嘿嘿

dimlau2:

顺道:我的写作风格(如果有风格的话)是分句短,分段频。有时候一篇文章里就没有分两行的句子,而且每句话就是一段
所以,对我来说有没有段首缩进基本没有影响

缩进,有时候反而更丑了

张喜喜3:

老大,您的方法用px不科学啊,万一字间距(letter-spacing)不是默认的就会出问题,就用text-indent: 2em多好啊

张洗洗4:

老大,您备案还没备下来啊,N+1号啊!我举报你我!
我都在火星上备好了,火ICP备#%^$&^,过几天就加上。

leavic5:

谢谢两位兄台指教,昨晚上只是刚想到可以这样试试,但时间很紧(发表完后再过20分钟就要断电了),也没仔细兼顾到各种字间距的问题。
不过我们是很从善如流的,按两位建议改成paddding-left:2em了。

@张东南西北西:
我用“干ICP备”是有道理的,因为我是江西人,所以我可以说我是把赣字写错了,但你这个“火”字就比较难解释了。
以前信产部好像都是机器人审核,20天一定批复下来。自从该死的cn域名变成1块钱之后,似乎连机器人都有在罢工。
反正一般空间商都给60天的缓冲器等待备案,到时候空间也到期了,买个国外空间光明正大的写“干ICP备”。

leavic6:

@dimlau:
确实就像你说的,如果每段都很短而且几乎没有长段,那样确实不太适合缩进,所以评论部分我就觉得还是不缩进好。

Jorux7:

1.关于备案,我是没在网站上加什么“ICP备”的,把信息产业部网站的pageRank弄成中国之最,比较有讽刺意味。
2.我一般都是用p {text-indent: 2em},em的问题是,需要注意em继承问题。
3.另一个问题是,它会使你的引用代码部分也缩进,可以用text-indent: 0 !important;避免。
4.jorux.com也做了些改进,见jorux.com及留言。

zeal8:

用css来排版的小问题是当别人copy你的内容时这两个空格就没了,呵呵。

zhang9:

楼上正解。

不过如果写两个空格来缩进的话,别人copy的时候不得不带上空格,这个也没得选择啊。

主流似乎还是不缩进,西方文化入侵的一个例子 :)