2010-09-10 95 views
1

是否可以如此风格与CSS的行逐行段?说第一行将有绿色,第二行是红色,第三行是黄色。请注意,该段落是本地的,并且段落内没有使用其他标签。如果可能的话,我只是想用CSS来改变样式。样式A段落行按行

谢谢。

+0

如果您知道每条线的确切线高度(以像素为单位),您可以*为段落应用条纹背景以实现此目的,但它会非常挑剔,而且很明显,您必须设置样式'px'中的'font-size'和'line-height'不够理想。你还必须找到一个与条纹有足够对比的'font-color',因为这个颜色在整个段落中都是恒定的。 – 2010-09-10 23:26:01

回答

5

在CSS中有一个:first-line伪元素,可让您对段落的第一行进行不同于其他行的设置,因此可以将第一行的颜色设为绿色。但我不知道如何将第二行指定为与第三行不同,除非您添加某种类型的分隔符元素,例如span

+0

谢谢,但我只需要CSS方式。换句话说,没有HTML的变化。 – 2010-09-10 18:03:18

+4

我明白了;我的答案总结是“没有一个”。 – 2010-09-10 18:09:03

1

您可以在不更改标记的情况下执行此操作的唯一方法是使用lettering.js。这是一个jquery插件,它会自动添加可以用CSS进行样式化的所需标记。

看看他们的维基,有需要的逐行样式的例子。

更多信息也在这里:http://letteringjs.com/

1

除了Jacobs和emjay的答案。

HTML正在描述一个文档,每个元素的语义。

段落可以有几行,但你需要这样说。像:

<p class="line-by-line"> 
    <p>line 1 of paragraph</p> 
    <p>line 2 of paragraph</p> 
</p> 

然后你可以使用n-th选择:

p.line-by-line > p:nth-child(1) { 
    color: green; 
} 

p.line-by-line > p:nth-child(2) { 
    color: red; 
} 

检测一个语义含义,而不必在它的标记定义是棘手的,不是HTML代表。拥有<p></p>并不意味着该段落包含多少行。想象不同尺寸的屏幕和视口。

+1

问候德国:) – emjay 2014-09-22 21:01:39