CSS隐藏页面文字的几种方式总结

又是一场大雪过后,天空像海一样蔚蓝,甚至比海更加晶莹剔透。千峰万岭,极目望去,尽是白色,闪耀着一片连接不断的银光。山顶积雪未融,如白银宫网。

方式一:text-indent:-9999px
不多说,ext-indent负值为最常用方法,然问题有三:
1.较大的负值有性能问题,例如新浪/腾讯微博提交按钮的-9999em,大概12~16万像素的宽度,相对于100个显示器宽度,在低配Android pad上,尤其含动画效果的时候,会直接卡爆;
2.FireFox浏览器下虚框。其实问题不大,overflow:hidden可修复;
3.不能应用在IE6/IE7伪inline-block水平元素上,否则元素会被text-indent拐走。
即使有人提出:

CSS Code复制内容到剪贴板
  1. {text-indent:100%;white-spacing:nowrap;overflow:hidden;}

除了性能有所缓解,后面两个问题依旧存在。

方式二:font-size:0
此方式在没有给容器设置height 或者行高的情况下,设置font-size:0,则容器将无高度

方式三:设置padding,撑开容器

CSS Code复制内容到剪贴板
  1. <styletype="text/css">
  2. .btn{height:22px;width:55px;overflow:hidden;}
  3. .btn_download{display:inline-block;width:55px;height:22px;padding-top:22px;background:url(btn_download.gif)no-repeat;text-align:center;}
  4. </style>
  5. <divclass="btn">
  6. <aclass="btn_download"rel="nofollow noopener noreferrer" href="#"title="下载">下载</a>
  7. </div>

方式四:letter-spacing+first-letter
1.此方法兼容IE6+, 适用于inline-block水平元素,且适用于button元素,不过,需要是下面这种写法

CSS Code复制内容到剪贴板
  1. <buttontype="button/submit">按钮</button>

而不能是这样子:

CSS Code复制内容到剪贴板
  1. <inputtype="button/submit"value="按钮"/>

2.此方法受text-align属性影响。
text-align:left;letter-spacing+first-letter的margin使用负值,
text-align:right;letter-spacing+first-letter的margin需要使用正值。
值的大小其实没有定值。一般,letter-spacing绝对值大于2em可以,首字符margin可以大一些,demo中是-20em.
3.多个:first-letter伪元素不要使用逗号分隔,貌似会全部失效,应分开写使用逗号分隔的时候逗号前面一定要留一个空格。否则,IE6浏览器会忽略这条声明:

CSS Code复制内容到剪贴板
  1. .btn:first-letter,
  2. .img:first-letter{
  3. margin-left:-20em;
  4. }
  5. .btn:first-letter,/*逗号前需有1个空格*/
  6. .img:first-letter{
  7. margin-left:-20em;
  8. }

4.可放到公共样式中,单独调用

CSS Code复制内容到剪贴板
  1. .notext{
  2. text-align:left;
  3. letter-spacing:-3em;
  4. overflow:hidden;
  5. }
  6. .notext:first-letter{
  7. margin-left:-20em;
  8. }

本文CSS隐藏页面文字的几种方式总结到此结束。成功男人的背后永远有一个爱他的女人。小编再次感谢大家对我们的支持!

您可能有感兴趣的文章
css让页脚保持在底部位置的四种方案

CSS如何使用Flex和Grid布局如何实现3D骰子

Flex布局史上最简单使用语法教程

新的CSS 伪类函数 :is() 和 :where()示例详解

纯CSS打字动画的如何实现示例