一张图片上显示多个链接的例子

本文介绍了一个使用HTML和图像映射技术创建的交互式星球地图。点击不同星球图标即可跳转到对应星球的详细介绍页面,是一种实用且有趣的网页设计方式。
<html>
<body>


<p>请点击图像上的星球,把它们放大。</p>


<img
src="http://www.w3school.com.cn/i/eg_planets.jpg"     <!---背景图片 背景图片上存在的区域图片可以作为超链接的识别区域-->
border="0" usemap="#planetmap"
alt="Planets" />


<map name="planetmap" id="planetmap">  <!---map是图形控制的标识-->

<!--  以第一个area为例子:area是每个图形区域    shape : 图像样式 coords: 大小位置 例如:(x,y)=(180,139),r=14 -->

<!-- target:在哪里显示新网页 alt: 提示 href:区域链接 -->

<area
shape="circle"       
coords="180,139,14"
href ="http://www.w3school.com.cn/example/html/venus.html"
target ="_blank"
alt="Venus" />


<area
shape="circle"
coords="129,161,10"
href ="http://www.w3school.com.cn/example/html/mercur.html"
target ="_blank"
alt="Mercury" />


<area
shape="rect"
coords="0,0,110,260"
href ="http://www.w3school.com.cn/example/html/sun.html"
target ="_blank"
alt="Sun" />


</map>


<p><b>注释:</b>img 元素中的 "usemap" 属性引用 map 元素中的 "id" 或 "name" 属性(根据浏览器),所以我


们同时向 map 元素添加了 "id" 和 "name" 属性。</p>


</body>

</html>

显示效果在:   http://www.w3school.com.cn/tiy/t.asp?f=html_areamap   可查看效果

<think> 首先,用户查询是:“我想查找在HTML中为同图片创建多个超链接的方法”。意思是,用户想知道如何让一张图片多个可点击的区域,每个区域链接到不同的URL。 我回顾了系统指令: - 所有行内数学表达式用$...$格式。 - 独立公式用$$...$$格式。 - LaTeX语法正确。 - 使用中文回答。 - 生成相关问题。 - 回答中引用的段落末尾自然地添加引用标识。 用户提供了两个引用: - **引用[1]**:解释了如何通过<a>标签给图片添加超链接,用例子展示图片链接个网址。 - **引用[2]**:似乎是个推广内容,说HTML图片超链接的设置方法,但内容不直接相关,主要是广告群号。 用户说:“上述引用仅供参考,并不是用户真正的需求,请尽可能多的参考用户上次的问题和你的回答。” 所以,我需要基于用户的当前问题来回答,而不是直接依赖这些引用。 用户的当前问题是:为同图片创建多个超链接。这意味着点击图片的不同部分时,链接到不同的地方。 在HTML中,标准方法是使用图像映射(image maps)。图像映射允许你定义图片上的热点区域(如矩形、圆形、多边形),每个区域链接个URL。 我应该构建个清晰、结构化的回答: 1. **介绍问题**:解释什么是图像映射及其用途。 2. **实现方法**:详细描述如何使用HTML创建图像映射。 3. **示例**:提供代码示例来演示。 4. **注意事项**:添加些提示或注意事项。 5. **生成相关问题**:结束时生成几个相关问题。 回答必须用中文。 现在,关于引用:用户提供了引用[1]和[2],但我需要自然地添加引用标识在引用的段落末尾。引用[1]是相关的,因为它提到了基本的图片超链接,但用户的当前问题是多个超链接。 在回答中,如果我从引用[1]中借用概念,我应该在末尾添加引用标识。同样,对于用户的问题核心,我应该基于知识来回答。 关键点: - 使用`<map>`标签定义图像映射。 - 使用`<area>`标签定义热点区域。 - `usemap`属性在`<img>`标签中引用映射。 结构回答: 1. **引言**:简要解释图像映射的概念。 2. **步骤**:分步讲解如何实现。 - 定义图片。 - 创建映射。 - 定义区域。 3. **代码示例**:给出个HTML例子。 4. **总结**:强调优点或注意事项。 5. **相关问题**:生成2-3个相关问题。 结束时,添加相关问题。 确保回答真实可靠。 相关问题示例: 1. 如何在HTML中创建圆形热点区域? 2. 图像映射与CSS图像映射的区别是什么? 3. 如何使图像映射响应式? 现在,写回答。 </think> ### HTML中为同图片创建多个超链接的实现方法 在HTML中,为同一张图片添加多个超链接(即点击图片不同区域跳转到不同网址)可以使用图像映射(Image Map)技术来实现。图像映射允许你定义图片上的多个可点击区域(称为“热点”),每个区域关联个独立的超链接。这种方法基于HTML的`<map>`和`<area>`标签,结合`<img>`标签中的`usemap`属性。以下是详细步骤和示例: #### 1. **核心实现步骤** - **步骤1:定义图片** 使用`<img>`标签加载图片,并通过`usemap`属性关联到个映射(Map)。`usemap`的值必须以`#`开头,后跟映射名称。 ```html <img src="your-image.jpg" alt="示例图片" usemap="#multiLinkMap"> ``` - **步骤2:创建映射** 使用`<map>`标签定义映射,并通过`name`属性指定映射名称(与`usemap`的值匹配)。在`<map>`内部,使用`<area>`标签定义多个热点区域。 ```html <map name="multiLinkMap"> <!-- 定义多个热点区域 --> </map> ``` - **步骤3:定义热点区域** 每个`<area>`标签代表个热点区域,支持三种形状:矩形(`shape="rect"`)、圆形(`shape="circle"`)或多边形(`shape="poly"`)。关键属性包括: - `shape`:指定区域形状。 - `coords`:定义坐标位置(根据形状不同,格式不同)。 - `href`:设置链接的URL。 - `alt`:提供替代文本(用于可访问性)。 例如,为图片定义两个矩形热点区域: ```html <map name="multiLinkMap"> <!-- 第个热点区域:矩形,链接到URL1 --> <area shape="rect" coords="0,0,100,100" href="https://example.com/link1" alt="链接1"> <!-- 第二个热点区域:矩形,链接到URL2 --> <area shape="rect" coords="100,0,200,100" href="https://example.com/link2" alt="链接2"> </map> ``` **坐标说明**:`coords`属性取决于形状: - 矩形:`coords="左上x,左上y,右下x,右下y"`。 - 圆形:`coords="圆心x,圆心y,半径"`。 - 多边形:`coords="x1,y1,x2,y2,..."`(多个点定义形状)。 #### 2. **完整代码示例** 以下是个简单示例,展示如何为一张图片添加三个热点区域(两个矩形和个圆形): ```html <!DOCTYPE html> <html> <head> <title>图像映射示例</title> </head> <body> <!-- 图片关联到映射 #multiLinkMap --> <img src="example.jpg" alt="多链接图片" usemap="#multiLinkMap"> <!-- 映射定义 --> <map name="multiLinkMap"> <!-- 左上角矩形区域 --> <area shape="rect" coords="0,0,100,100" href="https://baike.sogou.com/v14437.htm" alt="链接到页面1"> <!-- 右上角矩形区域 --> <area shape="rect" coords="100,0,200,100" href="https://example.com/page2" alt="链接到页面2"> <!-- 中心圆形区域 --> <area shape="circle" coords="150,150,50" href="https://example.com/page3" alt="链接到页面3"> </map> </body> </html> ``` - **效果**:用户点击图片左上区域跳转到URL1,右上区域跳转到URL2,中心区域跳转到URL3。 - **测试提示**:在浏览器中打开此HTML文件,确保图片路径正确。 #### 3. **注意事项** - **坐标获取**:可以使用图像编辑工具(如GIMP或Photoshop)定位坐标,或在线工具生成图像映射代码。 - **响应式设计**:图像映射默认不响应屏幕尺寸变化。如果需要响应式,可以用CSS或JavaScript库(如jQuery插件)增强。 - **可访问性**:始终添加`alt`属性在`<area>`标签,以确保屏幕阅读器用户能理解热点功能。 - **局限性**:图像映射适合静态图片;对于动态内容,考虑CSS或SVG替代方案。 - 参考基础图片超链接方法,HTML通过`<a>`标签包裹`<img>`实现单个链接[^1]。 #### 相关问题 1. 如何为图像映射的热点区域添加悬停效果? 2. 在响应式设计中,如何使图像映射自适应不同屏幕尺寸? 3. 图像映射与使用CSS创建可点击区域的优缺点比较?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值