• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >CSS > text-indent的用法包括块级元素等详细总结

text-indent的用法包括块级元素等详细总结

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-08-06

本文主要包含text-indent,块级元素等相关知识,佚名 希望在学习及工作中可以帮助到您

最近在看文本相关的属性,觉得text-indent挺有意思的,就小小的总结了一下(这里不讨论用text-indent来隐藏文字)。

我将会从下面几个方面来进行说明:

1.text-indent应用于块级元素

2.text-indent应用于行内元素

3.text-indent应用于替换元素

4.text-indent应用于inline-block元素

5.继承

6.总结

一、text-indent应用于块级元素

text-indent常用于段落首行2字符的缩进。我们先来看一下demo1(所有demo文章最后会提供下载地址)。

各浏览器都可以正常的显示。如图:

我们也可以通过负的text-indent来制作一些效果,各浏览器表现相同(demo2):

二、text-indent应用于行内元素

这里分两部分来说,一是text-indent应用于块级元素,块级元素里面有inline元素(通过继承或者指定text-indent),直接上demo3。

可见行内元素,虽然继承了text-indent的值(或者指定),却没有任何作用。

二是inline元素直接指定text-indent的值,或者块级元素不指定text-indent,而里面的inline元素指定。请看demo4。

chrome14、firefox7、opera10.6、safari5、ie8、ie9表现如下:

ie6/7表现如下:

比较一下,chrome14、firefox7、opera10.6、safari5、ie8没有作用于inline元素,但ie6/7却作用于inline元素,而且用于inline元素上,不同的条件表现也不同。

直接用于inline元素上:前面有32px的空白

块级元素不设置text-indent,而inline元素设置(inline前有文字):text-indent不会作用于inline元素。

块级元素不设置text-indent,而inline元素设置(inline前木有文字):text-indent会作用于inline元素,且与demo中设置的相同2em(24px,文字大小为12px)。

三、text-indent应用于替换元素

这里以应用到image与input元素为例进行说明,请看demo5。

chrome14、firefox7、opera10.6、safari5中的表现:没有作用于image,但却作用于了input,且中英文没有区别。

ie6/7中的表现:作用于image,且在input中,当为中文与英文时有不同的表现,从这点真不得不佩服ie6/7。还有更加有趣的,当你在全英文的输入框中改它的值时,又会有新的表现。

改变英文输入框的值后:

ie8、ie9中,没有作用于image,但却作用于了input,而且与ie6/7一样,英文与中文有上述的小bug。

改变英文的输入框的值后:

四、text-indent应用于inline-block元素

直接看demo6吧,结果说明一切(chrome14、firefox7、opera10.6、safari5、ie8、ie9中的表现)。

text-indent作用于inline元素

ie6/7的表现(作用于inline-block元素,而且前面多了32px):

五、继承

text-indent这个属性是可以继承的,引用权威指南上的一句话“在css2.1之前,text-indent总是继承计算值,而不是声明值。”。请看demo7。

非ie系列浏览器继承的均是计算值。

ie系列继承的却是声明值。

如果将父元素中的text-indent:2em;改成text-indent:28px,就不会有这个问题。

六、总结

看到这么多的不同点,您是不是感觉到很乱?如果你觉得不乱,那好,你是一牛人。不管你乱不乱,反正我是乱了。

所以,我给自己总结了一下:

1.text-indent只用于div,p这样的元素上,像image、input、inline-block、inline元素绝对不用。

2.text-indent的值如果子元素也要用到父元素的值,用px单位,而绝不用em。

最后,还是要说一下,本人水平有限,如有什么不当之处还请多指正。

最后附上所有demo下载地址:text-indent

您可能想查找下面的文章:

  • span设置text-indent不起作用的原因及解决方法
  • IE7部分标签(span、input )设置text-indent:-9999px后不在相应位置显示
  • IE6中a标签同时使用inline-block与text-indent时出现的BUG
  • text-indent的用法包括块级元素等详细总结
  • css overflow与text-indent:-999em 字体隐藏

相关文章

  • 2017-08-06CSS3制作圆角图片和椭圆形图片
  • 2017-08-06css 块状元素和内联元素
  • 2017-08-06网页排版 5个CSS基础
  • 2017-08-06你真的了解margin吗?你知道margin有什么特性吗?
  • 2017-08-06CSS解决链接锚点定位偏移的代码
  • 2017-08-06为网页内容添加结构和语义的hAtom微格式
  • 2017-08-06DIV+CSS 全屏垂直居中的一个办法
  • 2017-08-06利用CSS3的transition属性实现滑动效果
  • 2017-08-06css自适应宽度 多种方法实现宽度自适应的水平居中
  • 2017-08-06CSS3的column-fill属性对齐列内容高度的用法详解

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • 使用CSS3实现圆角,阴影,透明
    • 基于链接关系的微格式 使用rel属性
    • 解决table td中的checkbox无法上下居中的问题
    • 纯CSS(无JS)实现的二级弹出菜单效果代码
    • css3强大的动画效果animate使用说明及浏览器兼容介绍
    • 浏览器对于含小数值px(像素)解析的差异及小数值如何解决兼容性问题
    • CSS3中HSL和HSLA的简单使用示例
    • 使用text-overflow:ellipsis实现文字超出用省略号显示
    • CSS中的背景部分编程学习教程
    • 条件CSS基本使用方法

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有