CSS实现段落首行缩进


段落前面空两个字的距离,不要再使用空格了。应该使用首行缩进text-indent。

  text-indent可以使得容器内首行缩进一定单位。比如中文段落一般每段前空两个汉字。

  在这里我们需要了解一种长度单位em。em是相对长度单位。相对于当前对象内文本的字体尺寸。

  我们中文段落一般每段前空两个汉字。实际上,就是首行缩进了2em。

  看下面的例子:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>PHP资讯 - www.phpq.net</title>
<style type="text/css">
p{text-indent: 2em; /*em是相对单位,2em即现在一个字大小的两倍*/}
</style>
</head>
<body>
<p>段落前面空两个字的距离,不要再使用空格了。应该使用首行缩进text-indent。长度单位em。相对于当前对象内文本的字体尺寸。我们首行缩进了2em。2em即现在一个字大小的两倍。我在网页教学网学到了好多新的知识</p>
</body>
</html>

  顺带说下text-indent属性隐藏文字的问题

  链接用图片做背景,text-indent:-9999px; 隐藏文字,此效果在 IE 中是正常的,但在 Firefox 里,鼠标点击该链接时,虚线框却会包住被缩进的文字,结果显示为虚线框 N 长。

  因为平时是用overflow:hidden; 属性的,所以一直也没有注意到这个问题的存在,但当你需要使用 JS 来实现某种交互时,强烈建议不要使用 overflow:hidden; 属性,因为会给你带来很多意想不到的麻烦。

  虚线框,其实就是 CSS 中的 outline 属性,这也说明 IE 和 Firefox 对于 outline 和 border 的解析范围并不一致:IE 认为虚线框就是border的边缘,而 Firefox 则认为虚线框应该是文字范围

本文作者:
« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3