a <div class="imagemap">
<img src="img/map.png" width="496px" height="382px" alt="A BAND"/>
<ul>
<li class="rim"><a href="" title="Rim">Rim</a></li>
<li class="jim"><a href="" title="Jim">Jim</a></li>
<li class="sim"><a href="" title="Sim">Sim</a></li>
<li class="nim"><a href="" title="Nim 弄啥来">Nim</a></li>
</ul> </div>

以上是html的代码部分,将图片至于div容器中。热点用无序列表嵌套<a>标签的形式。

.imagemap{
  margin-top:2em;
  width:496px;
  height:382px;
  position:relative;/*KEY*/
}
.imagemap ul{
  margin:0;
  padding:0;
  list-style:none;}
.imagemap a{
  position:absolute;//绝对定位于容器左上角 负值缩进文本使之隐藏
  display:block;
  width:60px;
  height:65px;
  text-indent:-1000em;}
/*定位热点的位置*/
.imagemap .rim a{
  top:20px;
  left:75px}
.imagemap .jim a{
  top:20px;
  left:215px}
.imagemap .sim a{
  top:25px;
  left:375px}
.imagemap .nim a{
  top:65px;
  left:285px}
/*实现反转效果*/
.imagemap a:hover,
.imagemap a:focus{
  border:1px solid #fff;
}

容器的宽高要与图片一致,注意设置相对定位

对热点根据头像大小设置宽高,应用绝对定位,文本用较大的负值缩进进行隐藏。

针对每一个头像位置,设置热点位置。(效果如下)

flicker样式的翻转

两者的区别在于,在原来的基础上多了外框和解释标签,为此在原来的<a>标签插入三个span标签,两个是外框,一个是解释标签。

<div class="imagemap">
<img src="img/map.png" width="496px" height="382px" alt="A BAND"/>
<ul>
<li class="rim"><a href="" title="Rim"><span class="outer"><span class="inner"><span class="note">Rim</span></span></span></a></li>
<li class="jim"><a href="" title="Jim"><span class="outer"><span class="inner"><span class="note">Jim</span></span></span></a></li>
<li class="sim"><a href="" title="Sim"><span class="outer"><span class="inner"><span class="note">Sim</span></span></span></a></li>
<li class="nim"><a href="" title="Nim 弄啥来"><span class="outer"><span class="inner"><span class="note">Nim</span></span></span></a></li>
</ul> </div>
.imagemap{
margin-top:2em;
width:496px;
height:382px;
position:relative;/*KEY*/
}
.imagemap ul{
margin:0;
padding:0;
list-style:none;}
.imagemap a{
position:absolute;/*绝对定位于容器左上角 负值缩进文本使之消失 */
display:block;
color:#000;
border:1px solid transparent;
}
imagemap a .outer{
display:block;
border:1px solid transparent;
}
.imagemap a .inner{
display:block;
width:60px;
height:65px;
border:1px solid transparent;}
.imagemap .rim a{
top:20px;
left:75px}
.imagemap .jim a{
top:20px;
left:215px}
.imagemap .sim a{
top:25px;
left:375px}
.imagemap .nim a{
top:65px;
left:285px}
.imagemap a:hover,
.imagemap a:focus{
border-color:#d4d82d;
}
.imagemap a .note{
position:absolute;
bottom:-2em;
width:3em;
padding:0.2em 0.5em;
background-color:#ffc;
text-align:center;
left:-1000em;//在正常状态隐藏解释标签
margin-left:-2em;//使得标签居于热点中央。
}
.imagemap a:hover .outer,
.imagemap a:focus .outer{
border-color:#000;}
.imagemap a:hover .inner,
.imagemap a:focus .inner{
border-color:#fff;}
.imagemap a:hover .note,
.imagemap a:focus .note{
left:30px;}

css图片映射的更多相关文章

  1. HTML CSS简介与图片映射

    1. CSS 入门 内联样式:在 HTML 元素中使用 “style” 属性,需要将表现与内容混在一起: 内部样式表:在 HTML 文档头部 <head> 区域使用 <style&g ...

  2. 大众点评评论数据抓取 反爬虫措施有css文字映射和字体库反爬虫

    大众点评评论数据抓取  反爬虫措施有css文字映射和字体库反爬虫 大众点评的反爬虫手段有那些: 封ip,封账号,字体库反爬虫,css文字映射,图形滑动验证码 这个图片是滑动验证码,访问频率高的话,会出 ...

  3. 几种垂直居中的方式及CSS图片替换技术

    由于块级元素的高度是可以设置的,所以对于块级元素的垂直居中比较简单. 方法一: 在不定高的情况下,把元素的上下内边距设为同一个值即可实现,即padding :10px   0; 以上方法针对块级元素和 ...

  4. css图片叠加和底部定位

    css图片叠加和底部定位 css图片叠加 两张图片需要叠在一起显示,如何定位 容器先对定位 第一张图片正常摆放 第二张图片绝对定位,top:0px 这样便实现了两张图片叠加在一起了,设置z-index ...

  5. 转:利用node压缩、合并js,css,图片

    1.安装nodejs http://nodejs.org/ 2.安装各自的node package js我用的是UglifyJS github地址:https://github.com/mishoo/ ...

  6. CSS图片列表

    1.效果图: 2.Example Source Code <h3><a href="http://www.52css.com/">我爱CSS画廊</a ...

  7. 漂亮的自适应宽度的多色彩CSS图片按钮

    一.素材               二.效果 三.CSS *{padding:0;margin:0} /*----------------------------------- 自适应宽度图片按钮 ...

  8. css图片垂直居中

    css图片垂直居中一.style代码 .case-pic{ height: 125px; position: relative; text-align: center } .case-pic span ...

  9. css 图片 圆形显示区域

    css 图片 圆形显示区域 css 和 div 实现 方形图片 圆形显示 点击下载

随机推荐

  1. ucGUI例程收藏

    ucGUI 几个重要例程Demo   按钮的定制 #include <stddef.h> #include <string.h> #include "WM.h&quo ...

  2. poj3259

    Wormholes Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 24864   Accepted: 8869 Descri ...

  3. Unity3D之UGUI学习笔记(三):EventSystem

    在UGUI中,EventSystem实现了所有关于交互方面的功能,和NGUI不一样的地方是,我们终于可以摆脱添加Box Collider了! 下面我们来学习一下. 对于按钮来说,直接有onClick的 ...

  4. java.lang.OutOfMemory总结分析

    OOM浅析 相信有一定java开发经验的人或多或少都会遇到OutOfMemoryError的问题,这个问题曾困扰了我很长时间,随着解决各类问题经验的积累以及对问题根源的探索,终于有了一个比较深入的认识 ...

  5. SQL Prompt 5.3.4.1

    Red Gate系列之三 SQL Server 开发利器 SQL Prompt 5.3.4.1 Edition T-SQL智能感知分析器 完全破解+使用教程   Red Gate系列之三 SQL Se ...

  6. MES系统的有用存储过程

    USE [ChiefmesNEW]GO/****** Object: StoredProcedure [dbo].[st_WMS_ImportStockInBill] Script Date: 10/ ...

  7. list删除操作 java.util.ConcurrentModificationException

    首先大家先看一段代码: public static void main(String[] args) { List<String> listStr = new ArrayList<S ...

  8. sqlite3 多线程和锁 ,优化插入速度及性能优化

    一. 是否支持多线程?   SQLite官网上的"Is SQLite threadsafe?"这个问答. 简单来说,从3.3.1版本开始,它就是线程安全的了.而iOS的SQLite ...

  9. 配置文件struts2Struts2配置文件模块化包含(include)与action总结

    本文是一篇关于配置文件struts2的帖子 <include>标签 当Struts配置文件比较多,需要模块化分别或分开成为多个配置文件时,这个功能比较好. 则需要使用<include ...

  10. 解决statusStrip控件上的项目不能靠右对齐的问题

    在c#中用到了状态栏控件StatusStrip,但当我想把StatusStrip上某个StatusLabel靠右对齐时出了问题. 按照MSDN中的办法,是设置ToolStripStatusLabel的 ...