最近在搞购物车加减号,但是由于加减号在不同手机上的显示效果存在错位的bug那么只好用icon来代替但是还行保留原来的加减号(特殊符号),所以就找了下如何隐藏input里面的文字。

正题开始
通常偏移掉字体的方式是

(1)

使用text-indent:-9999px;

可是他有一个局限性 他只适用于块级元素block
而我们往往有时候想偏移掉的a上的字体
所以问题就来了
text-indent:-9999px;虽然用起来比较惬意
将a转化成block的话 往往 他身后的的元素就被他赶到下一行了
如果正好这个a后面 是一个a按钮
就要用float来浮动以使他身后再出现簇拥者
这样是不是有些麻烦呢

(2)

line-height:0;
font-size:0;
overflow:hidden;

能完美“隐藏”掉你background之上的字体
经测试 ie6.0 、 7.0 、8.0、firefox 3.010 通过

(3)
最方便的是加个span,然后display:none,而且这样不会出bug。
遗憾的是,多了个标签,循环中使用的话,html又多了一堆字节,单个按钮推荐这样使用。

而针对input value的隐藏这个方式就有些吃力了
所以还是只能用block加text-indent来“偏移”模拟隐藏了

display:block;
font-size:0;
line-height:0;
text-indent:-9999px;

经测试 ie6.0 、 7.0 、firefox 3.010 通过

标签: css隐藏文字的几个方法

添加新评论