用CSS中的map标签制作单图多区域点击的示例

segmentfault   发布时间:2015-07-20 18:04:58   作者:dopppler   我要评论
这篇文章主要介绍了CSS中的map标签制作单图多区域点击的示例,可在同一张图片上实现多个点击事件的热点,需要的朋友可以参考下

map标签

定义一个客户端图像映射。图像映射(image-map)指带有可点击区域的一幅图像。

    area元素永远嵌套在map元素内部。area元素可定义图像映射中的区域。
    img标签中的usemap属性可引用的map标签中的id或name属性(取决于浏览器),所以我们应同时向map标签添加id和name属性。

示例

例如我们想在下面一张图实现九个热点区域,不切图,就使用map标签。
2015720180749341.jpg (440×494)

首先用 ps 得到几个坐标:
2015720180825615.jpg (600×415)

然后代码实现:

CSS Code复制内容到剪贴板
  1. <!DOCTYPE html>   
  2. <html lang="en">   
  3. <head>   
  4.     <meta charset="UTF-8">   
  5.     <title>Document</title>   
  6. </head>   
  7. <body>   
  8.     <img src="cat.jpg" alt="" usemap="#catmap" >   
  9.     <map name="catmap">   
  10.         <area shape="rect" coords="0,0,148,139" href ="http://www.baidu.com" target ="_blank" alt="">   
  11.         <area shape="rect" coords="148,139,295,0" href ="http://www.sina.com" target ="_blank" alt="">   
  12.         <area shape="rect" coords="295,0,439,140" href ="http://www.qq.com" target ="_blank" alt="">   
  13.         <area shape="rect" coords="148,139,0,340" href ="http://www.163.com" target ="_blank" alt="">   
  14.         <area shape="rect" coords="148,139,296,340" href ="http://www.soso.com" target ="_blank" alt="">   
  15.         <area shape="rect" coords="296,340,439,140" href ="http://sf.gg" target ="_blank" alt="">   
  16.         <area shape="rect" coords="0,340,148,493" href="http://www.zhihu.com" target ="_blank" alt="">   
  17.         <area shape="rect" coords="148,493,296,340" href="http://z.cn" target ="_blank" alt="">   
  18.         <area shape="rect" coords="296,340,436,490" href="http://jd.com" target ="_blank" alt="">   
  19.     </map>   
  20. </body>   
  21. </html>  

就是这样。
关于area

    area 可以是圆形(circ),多边形(poly),矩形(rect),不同形状要选取不同的坐标(coords).

    圆形:shape="circle",coords="x,y,z"
    x,y为圆心坐标(x,y),z为圆的半径

    多边形:shape="polygon",coords="x1,y1,x2,y2,x3,y3,..."
    每一对x,y坐标都定义了多边形的一个顶点(0,0) 是图像左上角的坐标)。定义三角形至少需要三组坐标;高纬多边形则需要更多数量的顶点。

    矩形:shape="rectangle",coords="x1,y1,x2,y2"
    第一个坐标是矩形的一个角的顶点坐标,另一对坐标是对角的顶点坐标,"0,0" 是图像左上角的坐标。请注意,定义矩形实际上是定义带有四个顶点的多边形的一种简化方法。(就是说,知道对角的两个点的坐标就行了。)

相关文章

  • 前端CSS Grid 布局示例详解

    CSS Grid 是一种二维布局系统,可以同时控制行和列,相比 Flex(一维布局),更适合用在整体页面布局或复杂模块结构中,这篇文章主要介绍了前端CSS Grid 布局详解,需要的朋
    2025-04-16
  • CSS Padding 和 Margin 区别全解析

    CSS 中的 padding 和 margin 是两个非常基础且重要的属性,它们用于控制元素周围的空白区域,本文将详细介绍 padding 和 margin 的概念、区别以及如何在实际项目中使用它们
    2025-04-07
  • CSS will-change 属性示例详解

    will-change 是一个 CSS 属性,用于告诉浏览器某个元素在未来可能会发生哪些变化,本文给大家介绍CSS will-change 属性详解,感兴趣的朋友一起看看吧
    2025-04-07
  • CSS去除a标签的下划线的几种方法

    本文给大家分享在 CSS 中,去除a标签(超链接)的下划线的几种方法,本文给大家介绍的非常详细,感兴趣的朋友一起看看吧
    2025-04-07
  • 前端高级CSS用法示例详解

    在前端开发中,CSS(层叠样式表)不仅是用来控制网页的外观和布局,更是实现复杂交互和动态效果的关键技术之一,随着前端技术的不断发展,CSS的用法也日益丰富和高级,本文将
    2025-04-07
  • css中的 vertical-align与line-height作用详解

    文章详细介绍了CSS中的`vertical-align`和`line-height`属性,包括它们的作用、适用元素、属性值、常见使用场景、常见问题及解决方案,感兴趣的朋友跟随小编一起看看吧
    2025-03-26
  • 浅析CSS 中z - index属性的作用及在什么情况下会失效

    z-index属性用于控制元素的堆叠顺序,值越大,元素越显示在上层,它需要元素具有定位属性(如relative、absolute、fixed或sticky),本文给大家介绍CSS 中z - index属性的作用
    2025-03-21
  • CSS @media print 使用详解

    文章详细介绍了CSS中的打印媒体查询@mediaprint包括基本语法、常见使用场景和代码示例,如隐藏非必要元素、调整字体和颜色、处理链接的URL显示、分页控制、调整边距和背景等
    2025-03-18
  • CSS模拟 html 的 title 属性(鼠标悬浮显示提示文字效果)

    本文介绍了如何使用CSS模拟HTML的title属性,通过鼠标悬浮显示提示文字效果,通过设置`.tipBox`和`.tipBox.tipContent`的样式,实现了提示内容的隐藏和显示,感兴趣的朋友一起
    2025-03-10
  • 前端 CSS 动态设置样式::class、:style 等技巧(推荐)

    本文介绍了Vue.js中动态绑定类名和内联样式的两种方法:对象语法和数组语法,通过对象语法,可以根据条件动态切换类名或样式;通过数组语法,可以同时绑定多个类名或样式,此外
    2025-02-26

最新评论