图片替换主要是指将文字替换成图片的技术,即在html语句中使用文字,浏览器显示时用对应的图片显示。其意义在于便于做网站优化(SEO),文字才是搜索引擎寻找的主要对象。

经典的替换方法:

  1. Fahrner图片替换法(FIR)

源码:

Html:

<h1 id="fir"><span>Fahrner Image Replacement</span></h1>

CSS:

#fir {

width: 287px;

height: 29px;

background: url(fir.gif)
no-repeat;

}

#fir span {

display: none;

}

解释:

首先添加一个<span>标签,然后使用<span>标签的display属性把文字隐藏起来,最后指定<h1>的背景图片。

优点:使用CSS而不是标记语法提供图片,更改图片只需更改CSS。

缺点:(1)需要一组不具备任何语义的<span>标签才能运作(2)display属性影响屏幕阅读器使用者(3)关闭浏览器显示图片,同时启用CSS支持时,文字图片均不可显示。

  2.  Leahy/Langridge图片替换法(LIR)

源码:

Html:

<h1
id="lir">Leahy/Langridge Image Replacement</h1>

CSS:

#lir {

padding-top:image
height;

overflow:hidden;

background:url(lir.gif)
no repeat;

height:0
!important;  //针对大多数浏览器

height:image
height; //针对IE5

}

解释:

首先将padding-top设置为图片高度,将h1高度设置为0(IE5下设置为图片高度),根据盒子模型可知,文字内容将被排挤到指定高度之外,同时设置overflow:hidden将溢出文字隐藏。

优点:(1)去掉冗余的<span>标签(2)不影响屏幕阅读器使用者

缺点:(1)关闭浏览器显示图片,同时启用CSS支持时,文字图片均不可显示(2)要为IE5 for Windows使用盒模型Hack。

  3.  phark图片替换法

源码:

Html:

<h1
id="phark">The Phark Method</h1>

CSS:

#phark {

height: image height;

text-indent: -5000px;

background: url(phark.gif) no-repeat;

}

解释:设置text-indent属性为很大的负值,将文字显示在屏幕之外,达到隐藏的效果。

优点:(1)不需要额外标签(2)不影响屏幕阅读器使用者

缺点:关闭浏览器显示图片,同时启用CSS支持时,文字图片均不可显示

最新文章

  1. 探索ASP.NET MVC5系列之~~~1.基础篇---必须知道的小技能
  2. C#得到某月最后一天晚上23:59:59和某月第一天00:00:00
  3. 深度|作为C端应用的代表,成功的陌生社交应用是什么样子的?
  4. 442. Find All Duplicates in an Array
  5. win7 64位 asp+access 数据库连接出错[代码:02],请检查数据库链接文件中的连接字串
  6. JS判断设备的类型
  7. CSS基础介绍
  8. “康园圈--互联网+校园平台“项目之Sprint3
  9. android ArrayAdapter BaseAdapter SimpleAdapter使用讲解
  10. ACTIVITI 表结构数据分析
  11. easyui datagrid隔行变色
  12. iOS -一些常用的方法
  13. C#入门教程笔记
  14. STM32F2系列低功耗总结
  15. Java 优先队列
  16. 关于反射和JVM的整理
  17. Java基础知识--泛型
  18. [UE4]Authority,网络控制权
  19. cdh5.13.1 hadoop hdfs HA模式无法启动
  20. Gradle &#39;MYasprj&#39; project refresh failed Error:CreateProcess error=216, 该版本的 %1 与您运行的 Windows 版本不兼容

热门文章

  1. jquery 工作笔记,不断整理中..
  2. es5 api
  3. java selenium webdriver实战 seleniumIDE
  4. 什么是epoll
  5. opencv 简单、常用的图像处理函数(2)
  6. request.getParameterValues与request.getParameter的差别
  7. Apache Mina开发手冊之四
  8. python 冒泡和快排,不多说【无聊】
  9. java的IO流包装不当导致从网页获取的数据出现乱码
  10. C和指针 读书笔记