网站推广.NET

网站推广.NET

css文本属性中的text-indent的解析

来源:互联网

文字属性text-indent是设置文字首行缩进的,任何元素都可以让首行以给定的长度缩进,长度甚至可以是负数;但只对快元素生效!

p{text-align:2em;}

这条规则使任何段落的首行缩进2个字符大小。

通常,text-indent可应用于任何块级元素,但不能应用于内联元素,也不能用于替换元素,如,但是,如果段落首行有一个图像,那么它将随文本一起移动。

立即学习“前端免费学习笔记(深入)”;

text-indent支持负的文本缩进,如

  • p{text-indent:-2em;}

这里所有的段落的首行就会向前移动2个文字大小。不过使用负的text-indent时要注意文字跑出元素外面,这样你要的效果可能反而就得不到了。

这里需要注意的是百分比的使用,百分比是指相对于父元素的值,如果设置5%的缩进值,那么此元素的首行将按其父元素的宽度的5%进行缩进。如:

  • p{width:400px;}

  • p{text-indent:5%;}

这是一段文字,测试文本缩进百分比的使用

我们可以看到首行文字缩进了20px,计算原理就是父元素400x5% = 20px,当然这里得注意p元素没有设置宽度,设置了宽度就按本身宽度的百分比来计算。

然而,text-indent中最有趣的估计是继承,它继承的是计算值,而非声明值。如

  • body{width:500px;}

  • p{width:400px;text-indent:10%;}

  • p{width:200px;}

<span style="font-size: 14px;"><p><br/>这是外面的文字<br/><p>这是里面的文字</p><br/></p></span>

这里便可以看到两段文字的首行都缩进了50px,而不是外面的文字50px,p元素中的文字缩进40px,可见它继承的是计算值,而不是声明值。

相关推荐:

CSS里的text-indent怎么使用

text-indent