html中map标签和area标签的应用(总结)
html中map标签和area标签的应用(总结)
一、总结
一句话总结:
html中map标签和area标签和组成图片地图,在前端优化中可以减少http请求
1、map标签的用途是什么?
图片地图:是与img标签绑定使用的,常被用来赋予给客户端图像某处区域特殊的含义,点击该区域可跳转到新的文档。
因为map标签是与img标签绑定使用的,所以我们需要给map标签添加ID和name属性,让img标签中的usemap属性引用map标签中的id或者name属性(由于浏览器的不同,usemap属性接收二者之一的值,所以通常name和id属性二者都写,值相同),并配合area标签进行使用。
二、html中map标签和area标签的应用
转自或参考:html中map标签和area标签的应用
https://www.cnblogs.com/okgoodman/p/8586524.html
map标签的用途:是与img标签绑定使用的,常被用来赋予给客户端图像某处区域特殊的含义,点击该区域可跳转到新的文档。
因为map标签是与img标签绑定使用的,所以我们需要给map标签添加ID和name属性,让img标签中的usemap属性引用map标签中的id或者name属性(由于浏览器的不同,usemap属性接收二者之一的值,所以通常name和id属性二者都写,值相同),并配合area标签进行使用。
示例代码如下:
<!doctype html> <html> <head></head> <body> <img src="http://s2.sinaimg.cn/middle/69906822ga1e24ba6e971&690" width="444" height="395" alt="中国地图" usemap="#province"/> <map name="province" id="province"> <area shape="rect" coords="80,112,110,125" alt="新疆" href="https://baike.baidu.com/item/%E6%96%B0%E7%96%86/132263?fr=aladdin"> <area shape="rect" coords="77,209,110,229" alt="西藏" href="https://baike.baidu.com/item/%E8%A5%BF%E8%97%8F/130045"> <area shape="rect" coords="150,176,185,192" alt="青海" href="https://baike.baidu.com/item/%E9%9D%92%E6%B5%B7/31638"> <area shape="rect" coords="197,236,235,261" alt="四川" href="https://baike.baidu.com/item/%E5%9B%9B%E5%B7%9D/212569"> <area shape="rect" coords="170,300,211,325" alt="云南" href="https://baike.baidu.com/item/%E4%BA%91%E5%8D%97/206207"> <area shape="circle" coords="227,200,8" alt="甘肃" href="https://baike.baidu.com/item/%E7%94%98%E8%82%83"> <area shape="circle" coords="240,177,5" alt="宁夏" href="https://baike.baidu.com/item/%E7%94%98%E8%82%83"> <area shape="circle" coords="285,133,8" alt="内蒙古" href="https://baike.baidu.com/item/%E7%94%98%E8%82%83"> </map> </body> </html>
显示效果如下:
我们可以看出这是一张地图,如果单单只是一张图片,就会显得很单调,所以我们通过map标签赋予各个省的区域以含义,在这里我点击新疆区域后跳转到新疆的百度百科,如下图:
这样我们就可以直接了解到每个省的历史和文化,而不用再去一个个的去搜寻,显得更人性化。
其中area标签定义了图像中被赋予特殊含义的区域,它主要的值有alt、cooreds、href、shape、target等
1、alt属性
定义:规定区域的替代文本。
说明:如果写href属性,则alt属性是必写的
2、cooreds属性
定义:定义相关区域的坐标
说明:和shape属性搭配使用
(1)当shape属性为rect时,代表相关区域为矩形,则cooreds属性值为(x1,y1,x2,y2),其中x1,y1为左上角的坐标,x2,y2为右下角的坐标;
(2)当shape属性为circle时,代表相关区域为圆形,则cooreds属性值为(x,y,radius),其中x,y为圆形的中心坐标,radius为圆形的半径;
(3)当shape属性为poly时,代表相关区域为多边形,则cooreds属性值为(x1,y1,x2,y2,x3,y3......xn,yn),规定了多边形各个顶点的坐标,由于浏览器会自动闭合多边形,所以尾部坐标不必与第一个坐标相等。
3、href属性
定义:定义了相关区域所连目标
说明:href属性一般有三种值
(1)绝对路径:通常用来指向其他的网站如(href="https://www.baidu.com")
(2)相对路径:通常用来指向自身网站内的某个文件如(href="//favicon.ico")
(3)锚链接:通常用来指向页面中的锚如(href="#header")
4、shape属性
定义:定义了相关区域的形状
说明:(1)默认值(default):规定全部区域
(2)rect:规定相关区域为矩形
(3)circle:规定相关区域为圆形
(4)poly:规定先关区域为多边形
5、target属性
定义:定义了在何处打开目标链接
说明:(1)_blank:在新窗口打开被链接的文档
(2)_self:默认,在相同框架中打开被链接的文档
(3)_parent:在父框架集中打开被链接的文档
(4)_top:在整个窗口中打开被链接文档
(5)framename:在指定框架中打开被链接文档
说明:area标签有些时候也可以当做a标签的替代品,因为a标签并不能直接嵌套a标签,在某些情况下,我们又不得不用,那么我们可以把a标签替换为area标签,使布局更加简单。