shape和coords:是两个主要的参数,用于设定热点的形状和大小。其基本用法如下:
- <area shape="rect" coords="x1, y1,x2,y2" href=url>表示设定热点的形状为矩形,左上角顶点坐标为(X1,y1),右下角顶点坐标为(X2,y2)。
- <area shape="circle" coords="x1, y1,r" href=url>表示设定热点的形状为圆形,圆心坐标为(X1,y1),半径为r。
- <area shape="poligon" coords="x1, y1,x2,y2 ......" href=url>表示设定热点的形状为多边形,各顶点坐标依次为(X1,y1)、(X2,y2)、(x3,y3) ......。
<area>标记是在图像地图中划分作用区域的,因此其划分的作用区域必须在图像地图的区域内,所以在用 <area> 标记划分区域前必须用HTML的另一个标记<map>来设定图像地图的作用区域,并为指定的图像地图设定名称,该标记的用法很简单, 即<map name="图像地图名称"> ...... </map>。
下面通过一个例子来说明这两个标记的用法:
eg1:
html:
<!DOCTYPE HTML><html><head> <meta charset="utf-8"> <title>无标题文档</title> <style> </style></head> <body><img src="img/img.jpg" width="600" height="500" border="0" usemap="#Map"><map name="Map"> <area shape="rect" coords="100,100,500,200" href="a.html" title="a界面" target="_blank"></map></body></html>
result:
eg2:
html:
<!DOCTYPE HTML><html> <head> <meta charset="utf-8"> <title>无标题文档</title> <style> </style> </head> <body> <img src="img/img.jpg" width="600" height="500" border="0" usemap="#Map"> <map name="Map"> <area shape="circle" coords="300,300,100" href="b.html" title="b界面" target="_blank"> </map> </body> </html>
result:
eg3:
html:
<!DOCTYPE HTML><html> <head> <meta charset="utf-8"> <title>无标题文档</title> <style> </style> </head> <body> <img src="img/img.jpg" width="600" height="500" border="0" usemap="#Map"> <map name="Map"> <area shape="poly" coords="200,200,400,200,500,400,100,400,200,200" href="a.html" title="a界面" target="_blank"> </map> </body> </html>
result:
在制作本文介绍的效果时应注意的几点:
- 在<img>标记不要忘记设置usemap、ismap参数,且usemap的参数值必须与<map>标记中的name参数值相同,也就是说,"图像地图名称"要一致;
- 同一"图像地图"中的所有热点区域都要在图像地图的范围内,即所有<area>标记均要在<map>与</map>之间;
- 在<area>标记中的 cords 参数设定的坐标格式要与shape参数设定的作用区域形状配套,避免出现在shape参数设置的矩形作用区域,而在cords 中设置的却是多边形区域顶点坐标的现象出现。
coords 属性
<area> 标签的 coords 属性定义了客户端图像映射中对鼠标敏感的区域的坐标。坐标的数字及其含义取决于 shape 属性中决定的区域形状。可以将客户端图像映射中的超链接区域定义为矩形、圆形或多边形等。
下面列出了每种形状的适当值:
圆形:shape="circle",coords="x,y,z":这里的 x 和 y 定义了圆心的位置("0,0" 是图像左上角的坐标),r 是以像素为单位的圆形半径。
多边形:shape="polygon",coords="x1,y1,x2,y2,x3,y3,...":每一对 "x,y" 坐标都定义了多边形的一个顶点("0,0" 是图像左上角的坐标)。定义三角形至少需要三组坐标;高纬多边形则需要更多数量的顶点。多边形会自动封闭,因此在列表的结尾不需要重复第一个坐标来闭合整 个区域。
矩形:shape="rectangle",coords="x1,y1,x2,y2":第一个坐标是矩形的一个角的顶点坐标,另一对坐标是对角的顶点坐标,"0,0" 是图像左上角的坐标。请注意,定义举行实际上是定义带有四个顶点的多边形的一种简化方法。
html里,如何去掉点击map里area的边框
★第一种方法是:在<img>标签中加入hidefocus="true"
<img src="pic.jpg" width="134" height="115" border="0" usemap="#Map" hidefocus="true" />
★第二种方法是:在需要去掉边框的<area>标签中加入onfocus="blur(this);" (如果area区域较多,则每个都要加,那就显得有些麻烦了,可以用第一种方法)
<area shape="poly" coords="44,44,61,40,77,45,95,55,105,66,57,76,16,62,32,58,27,55,40,50" href="link_to.html" onfocus="blur(this);" />
注:推荐使用第二种方法。