.texthidden{
text-indent:-9999px;
white-space:nowrap;
line-height:0;}
3.overflow:hidden:这是一个比较合理且我最喜欢的方法,具体代码如下:
代码:
.texthidden{
display:block;/*统一转化为块级元素*/
overflow:hidden;
width:0;
height:0;}
附加:positon:absolute:
用绝对定位将其推出可视区,不过虽然可视性不存在,但仍占据物理空间,与隐藏文字的宗旨相背,代码请看:
代码:
.texthidden{
positon:absolute;
margin-top:-9999px;
margin-left:-9999px;}
下来列举图象替换的流行技术,希望可以帮助你更好地掌握它们并了解各自的局限性:
1.display:none:此处使用该方法时,需要多添加一层额外的无语义的结构(此处用了span)来应用display:none;,即h1span标题/span/h1,再加上上述的缺陷,所以最好不使用该技术。
2.text-indent:-9999px:隐藏文字中已经都说了,只需在代码中去除line-height:0;,再添加background:url();即可,但text-indent:-9999px;在不同的浏览器存在差异,比如在IE5下就常会出现背景显示不出来或是滞后问题,不过总的来说,在图象替换方面它还是一个不错的方法。
(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/webkaifa/)3.overflow:hidden:这依旧是一个我最喜欢的方法,但合不合理却不敢妄言,具体代码如下:
代码:
.replacement{
display:block;/*统一转化为块级元素*/
overflow:hidden;
width:300px;
height:100px;
padding:100px 0 0;
background:url();}
若需要替换一个带链接的文字(即a出现在文字标签中),则需要对代码稍做些改动,具体代码如下:
代码:
.replacement,.replacement a{
display:block;/*统一转化为块级元素*/
overflow:hidden;
width:300px;
height:100px;}
.replacement a{
padding:100px 0 0;
background:url();}
对于该代码需要注意的是,必须在父级标签中加一个overflow:hidden;,因为在IE下会出现一个小bug:a的内容没办法溢出隐藏。
附加:positon:absolute:以上三种替换方法都有一个共同的缺陷,那就是:如果浏览器禁止显示图片且打开CSS或者用阅读器之类的话会造成用户无法接受信息。为了解决这一问题,在《css mastery》一书中,给我们提出了这样一种方法:将一个图象覆盖在文字上而非隐藏文本,代码请看:
代码:
style type="text/css"
h2{
positon:relative;
width:300px;
height:100px;}
h2 span{
positon:absolute;
width:100%;
height:100%;
background:url();}
/style
h2
span/span晋西浪子
/h2
当然它也有缺陷,比如,添加了一层额外的无语义的结构(比display:none内的更加没有意义),还有它必须使用具有实色背景的图象。