当前位置: 首页 > 图文教程 > 网页制作 > CSS样式表 > CSS教程:overflow与text-indent:-9999px

CSS样式表
CSS网页设计 IE8和IE7共存
CSS2 打印属性让打印HTML文档不出问题
制作网页中设计段落缩进的方法
CSS border 属性使用说明
CSS border-style 属性使用方法
CSS border-color 属性使用方法
CSS border-width 属性使用教程
CSS padding属性定义边内补白
CSS margin 属性定义边外补白
网页布局教程 掌握CSS网页布局属性
css 背景样式属性说明
span margin 设置生效
html 滚动条在IE6和IE7中兼容性问题
IE6 两个div有间隙的问题(IE 3px bug)
CSS 数字和字母将容器撑大问题解决
换个角度看页面重构中的语义化
DIY属于个人开发使用的CSS Reset
CSS 空格引起网页布局间距问题
CSS 网页制作时遇到问题的快速参考技巧
css li 去掉点的样式写法

CSS样式表 中的 CSS教程:overflow与text-indent:-9999px


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-28   浏览: 163 ::
收藏到网摘: n/a

作为一个web前端开发
为了html语义化
常常要给内容模块加上一些标题来让页面更有意义
当然还有我们的图片按钮
在抛开css裸奔的情况下也能很顺利的汲取到页面信息
通常为了传达更好的视觉效果
我们常用图片替代掉字体
而早前的前端开发常直接不在html中给出内容
用 ;(甚至为空)
这样在没有加载到css时就无法知道这个区块究竟是什么内容了

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

这样是不是有些麻烦呢
所以推荐使用
line-height:0;
font-size:0;
overflow:hidden;
能完美“隐藏”掉你background之上的字体
经测试 ie6.0 、 7.0 、8.0、firefox 3.010 通过

而针对input value的隐藏这个方式就有些吃力了
所以还是只能用block加text-indent来“偏移”模拟隐藏了
display:block;
font-size:0;
line-height:0;
text-indent:-9999px;
经测试 ie6.0 、 7.0 、firefox 3.010 通过