object中的usemap是什么-HTML
<object> 标签中的 usemap 属性用于将嵌入的对象(如图像)与一个 图像映射(image map) 关联起来。图像映射允许你在图像的特定区域定义可点击的链接,用户点击这些区域时会触发相应的操作。
什么是图像映射?
图像映射是一种将图像的特定区域与超链接关联的技术。它通过 <map> 标签定义,并使用 <area> 标签指定可点击区域的形状、坐标和链接目标。
usemap 属性的作用
usemap 属性将 <object> 嵌入的内容(通常是图像)与一个 <map> 元素关联起来。它的值是一个以 # 开头的 <map> 元素的 name 或 id。
使用方法
定义图像映射(
<map>和<area>)
使用<map>标签定义图像映射,并在其中使用<area>标签指定可点击区域的形状、坐标和链接目标。关联图像映射(
usemap)
在<object>标签中使用usemap属性,将其与<map>标签关联。
示例
以下是一个完整的示例,展示如何使用 <object> 和 usemap 实现图像映射:
<object data="example.png" type="image/png" usemap="#imagemap" width="500" height="300">
您的浏览器不支持显示此图像。
</object>
<map name="imagemap">
<!-- 定义一个矩形区域 -->
<area shape="rect" coords="0,0,100,100" href="https://example.com/page1" alt="Page 1">
<!-- 定义一个圆形区域 -->
<area shape="circle" coords="200,150,50" href="https://example.com/page2" alt="Page 2">
<!-- 定义一个多边形区域 -->
<area shape="poly" coords="300,200,350,250,400,200" href="https://example.com/page3" alt="Page 3">
</map>
代码解析
<object>标签data="example.png":嵌入的图像文件。type="image/png":指定图像的MIME类型。usemap="#imagemap":将图像与名为imagemap的<map>元素关联。
<map>标签name="imagemap":定义图像映射的名称,与usemap属性关联。
<area>标签shape:定义区域的形状,可以是rect(矩形)、circle(圆形)或poly(多边形)。coords:定义区域的坐标。- 对于
rect:coords="x1,y1,x2,y2",表示矩形的左上角和右下角坐标。 - 对于
circle:coords="x,y,radius",表示圆心坐标和半径。 - 对于
poly:coords="x1,y1,x2,y2,x3,y3,...",表示多边形的各个顶点坐标。
- 对于
href:定义点击区域后跳转的链接。alt:为区域提供替代文本,用于无障碍访问。
适用场景
- 图像热点:在图像中定义多个可点击区域,例如地图、产品图等。
- 交互式图像:为用户提供更丰富的交互体验,例如点击图像的不同部分跳转到不同页面。
注意事项
坐标计算
区域的坐标是基于图像的像素值,需要精确计算。可以使用图像编辑工具(如Photoshop)获取坐标。无障碍访问
为每个<area>添加alt属性,确保屏幕阅读器能够正确读取。兼容性
<object>和<map>在现代浏览器中兼容性良好,但在某些旧版浏览器中可能存在问题。
总结
<object> 标签中的 usemap 属性用于将嵌入的内容(如图像)与图像映射关联,从而实现图像中特定区域的可点击功能。通过 <map> 和 <area> 标签,可以灵活定义多个可点击区域,为用户提供丰富的交互体验。
object中的usemap是什么-HTML的更多相关文章
- APEX:对object中数据进行简单处理?
在Salesforce中,常常要对各种数据进行处理,已满足业务逻辑.本篇文章会介绍如何实现从object获取数据,然后将取得的数据进行一系列简单处理. 第一步:SongName__c 是一个新建的ob ...
- 使用第三方工具覆写Object中方法
我们在实际开发中,经常需要覆写Object中的equals,hashcode,toString方法,其实编写这些代码并不是很难,但很枯燥和乏味. 下面推荐Google的Guava jar包来覆写上面的 ...
- java锁与监视器概念 为什么wait、notify、notifyAll定义在Object中 多线程中篇(九)
在Java中,与线程通信相关的几个方法,是定义在Object中的,大家都知道Object是Java中所有类的超类 在Java中,所有的类都是Object,借助于一个统一的形式Object,显然在有些处 ...
- Object 中 equals()使用
详细看: https://www.cnblogs.com/naihuangbao/p/9445027.html 1. ==是判断两个变量或实例是不是指向同一个内存空间equals是判断两个变量或实例所 ...
- 为什么notify(), wait()等函数定义在Object中,而不是Thread中
Object中的wait(), notify()等函数,和synchronized一样,会对“对象的同步锁”进行操作. wait()会使“当前线程”等待,因为线程进入等待状态,所以线程应该释放它锁持有 ...
- JS如何遍历Object中的所有属性?
JS如何遍历Object中的所有属性? var params = ""; for(var i in baseParams){ params += "&" ...
- Object中的方法以及对象相等的判定
看图说话 Object有以下几个方法 getClass() final类型,主要是用来获得运行时的类型 hashCode() 返回该对象的哈希码值,方法是为了提高哈希表(例如 java.util.Ha ...
- Object中的clone方法
Java中对象的创建 clone顾名思义就是复制, 在Java语言中, clone方法被对象调用,所以会复制对象.所谓的复制对象,首先要分配一个和源对象同样大小的空间,在这个空间中创建一个新的对象 ...
- eclipse环境Dynamic web module version 3.1版本的进步,简化Dynamic web object 中Servlet类的配置,不用web.xml配置<Servlet>
eclipse环境Dynamic web module version 3.1版本之前,Dynamic web object 中Servlet类的配置,要在web.xml 配置<Servlet& ...
- Object中的wait,notify,notifyAll基本使用(转)
让线程停止运行/睡眠的方法只有两个:Thread.sleep()或者obj.wait() 记住obj.nofity()并不能停止线程运行,因为notify虽然释放了锁,但依然会急促执行完synchro ...
随机推荐
- Solution -「NOI Simu.」树
\(\mathscr{Description}\) 给定 \(n\), 集合 \(\{a_m\}\), 称一棵无标号但儿子有序的有根树合法, 当且仅当叶子权值存在一个因数在 \(\{a_m\}\) ...
- w3cschool-HBase官方文档-1配置
https://www.w3cschool.cn/hbase_doc/ HBase 概述 HBase是Apache的Hadoop项目的子项目,是Hadoop Database的简称. HBase是一个 ...
- C++:Eigen库
了解C++的Eigen库,主要内容来自:https://blog.csdn.net/hongge_smile/article/details/107296658 ,并加入自己的笔记. 介绍 Eigen ...
- SSL和HTTPS
转载: 链接 随着互联网的发展,给我们的生活带来便利的同时,也伴随着很多网络钓鱼.信息泄露.网络诈骗等事件的频繁发生,企业网站被钓鱼网站仿冒,遭受经济损失,影响品牌形象. 如果网站不使用SSL证书,数 ...
- dart变量类型详解
1==> 三个单引号的作用 String Str = ''' qijqowjdo 哈哈嘿嘿黑 '''; print(Str); 这样使用三个单引号,输出来换行:方便我们观看而已哈 2==> ...
- 2024大湾区网络安全大会,AOne来了!
近日,2024大湾区网络安全大会暨第二十六期花城院士科技会议在广州启幕.学者专家.高校院长.政府相关负责人及行业大咖齐聚一堂,围绕网络安全的前沿话题与挑战展开深入交流与探讨.天翼云科技有限公司网络安全 ...
- Flink程序异常--CommunicationsException: The last packet successfully received from the server was
一.异常截图 com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: The last packet successfully receive ...
- Luogu P2468 SDOI2010 粟粟的书架 题解 [ 紫 ] [ 可持久化线段树 ] [ 二分 ] [ 前缀和 ]
粟粟的书架:二合一的缝合题. 前一半测试点 此时是 \(200\times 200\) 的二维问题,首先考虑暴力怎么写,显然是每次询问把查的全扔进大根堆里,然后一直取堆顶直到满足要求或者取空. 那么这 ...
- 基于iscsi存储池
命令行 [root@kvm1 ~]# virsh pool-define-as --name stor2 --type iscsi \ > --source-host 192.168.114.1 ...
- 11. Docker 微服务实战(将项目打包生成镜像,在 Docker 当中作为容器实例运行)
11. Docker 微服务实战(将项目打包生成镜像,在 Docker 当中作为容器实例运行) @ 目录 11. Docker 微服务实战(将项目打包生成镜像,在 Docker 当中作为容器实例运行) ...