<map-a>
L'élément <map-a>
propose d'étendre la page Web afin d'inclure des liens entre les cartes et les emplacements.
Cet élément permet d’encapsuler des portions de coordonnées ou des géométries complètes, de manière à créer un lien à partir de la zone ou du lieu encapsulé. Si une géométrie d’entité ou une partie de géométrie est encapsulée dans un élément <map-a>
, un trait bleu d’une largeur d’un pixel est tracé autour de l’entité (par défaut) pour indiquer à l’utilisateur qu’il s’agit d’une « entité liée ».
Attributs
href
- L’URL vers laquelle mènent les points de localisation encapsulés. Note : Si l’attribut
type
de l’élément<map-a>
correspond à text/mapml, vous pouvez fournir des fragments (voir plus bas pour en savoir plus sur les fragments).
target
- L’URL liée s’affichera ici. Voir le tableau ci-dessous pour obtenir plus de détails.
- Affiche par défaut la valeur
_self
en l’absence d’une valeur valide.
type
- Type MIME du format de l’URL liée. Les choix possibles sont
text/html
ettext/mapml
. - Affiche par défaut la valeur
text/mapml
en l’absence d’une valeurtype
valide.
inplace
- L’attribut
inplace
est un attribut booléen -<map-a inplace href="..."><map-a>
- S’il est utilisé, le comportement de modification de la vue par défaut est ignoré et la vue de la carte n’est pas modifiée.
Comportement cible pour text/mapml
Valeur cible | Comportement |
---|---|
_self | Remplace la couche actuelle par la couche de l’URL liée. |
_blank | Ajoute la couche de l’URL liée à la carte. |
_parent | Remplace toutes les couches par la couche de l’URL liée. |
_top | Sert à parcourir la page Web jusqu’à l’URL liée. |
Comportement cible pour text/html
Valeur cible | Comportement |
---|---|
_self | Sert à parcourir la page Web jusqu’à l’URL liée. |
_blank | Sert à ouvrir l’URL liée dans un nouvel onglet. |
_parent | Sert à parcourir la page Web jusqu’à l’URL liée. |
_top | Sert à parcourir la page Web jusqu’à l’URL liée. |
Fragments de lieu
Si la valeur de l’attribut type
correspond à text/mapml
, vous pouvez ajouter un fragment de lieu à l’URL. Ce fragment permet d’afficher une vue panoramique du lieu donné et de faire un zoom sur celuici.
Les formats des fragments sont les suivants : #zoom, longitude, latitude
.
Les URL définies uniquement en fonction des fragments de lieu permettent d’afficher une vue panoramique de la carte et de faire un zoom sur le lieu donné, peu importe la valeur cible.
C.-à-d. <map-a href="#1, 20, 30">...</map-a>
déplacera la carte vers la latitude 30 et la longitude 20, et effectuera un zoom jusqu’au niveau 1.
Exemples
Modifier le style d’une entité liée
Pour modifier le style d’entités liées, ciblez simplement la classe map-a
dans votre feuille de style en cascade (CSS). Après avoir cliqué sur un lien, vous pouvez cibler la classe map-a-visited
. Voir l’exemple ci-dessous :
<map-layer>
<map-style>
.map-a {
stroke: red;
}
.map-a-visited {
stroke: green;
}
</map-style>
<map-feature>
<map-properties>
<h1>Basic</h1>
</map-properties>
<map-geometry>
<map-a href="../externalMapML.mapml#2,-98,37">
<map-polygon>
<map-coordinates>2771 3106 2946 3113 2954 3210 2815 3192 2771 3106</map-coordinates>
</map-polygon>
</map-a>
</map-geometry>
</map-feature>
</map-layer>
Encapsuler un type d’entités + un fragment de lieu
<map-feature>
<map-properties>
<h1>Élémentaire</h1>
</map-properties>
<map-geometry>
<map-a href="../externalMapML.mapml#2,-98,37">
<map-polygon>
<map-coordinates>2771 3106 2946 3113 2954 3210 2815 3192 2771 3106</map-coordinates>
</map-polygon>
</map-a>
</map-geometry>
</map-feature>
Permet de remplacer la couche actuelle par la couche contenue dans externalMapML.mapml. Une fois que cette couche est ajoutée, la carte effectuera un zoom jusqu’au niveau 2 et se déplacera à la longitude -98 et à la latitude 37.
Encapsuler des coordonnées de point avec target="_blank"
<map-feature>
<map-properties>
<h1>_blank cible</h1>
</map-properties>
<map-geometry>
<map-polygon>
<map-coordinates>2771 3106 2946 3113 <map-a href="file.mapml" target="_blank"> 2954 3210 </map-a> 2815 3192 2771 3106</map-coordinates>
</map-polygon>
</map-geometry>
</map-feature>
Dans cet exemple, un point sera créé à (2954, 3210). Une fois que vous aurez cliqué sur ce point, une nouvelle couche sera ajoutée à la carte.
Définition et comportement d ’un élément <map-a>
imbriqué.
<map-feature>
<map-properties>
<h1>Exemple avancé</h1>
</map-properties>
<map-geometry>
<map-a href="parent.mapml" target="_blank">
<map-multipolygon>
<map-polygon>
<map-coordinates>2771 3106 2946 3113 <map-a href="webpage.html" target="_blank" type="text/mapml"> 2954 3210 </map-a> 2815 3192 2771 3106</map-coordinates>
</map-polygon>
<map-a href="nested.mapml" target="_top">
<map-polygon>
<map-coordinates>11 11 12 11 12 12 11 12</map-coordinates>
</map-polygon>
</map-a>
</map-multipolygon>
</map-a>
</map-geometry>
</map-feature>
Cet exemple avancé contient plusieurs éléments <map-a>
imbriqués. Le comportement simple est le suivant : l’élément <map-a>
le plus près constitue le comportement du lien qui sera adopté par le lieu/la zone.
Spécifications
Spécification |
---|
HTML a element |
Exigences
Signaler les problèmes liés à ces exigences sur GitHub
exigence amélioration peu pratique indécis en cours de discussion
Spéc. | Visualiseur | API | |
---|---|---|---|
Entités vectorielles et superpositions (5.2) | |||
Prend en charge les hyperliens des marqueurs ou des entités vectorielles (5.2.3) | complet | complet | |
Interpréter les lieux et les positions sur une carte (5.3) | |||
Sélectionner la vue d’une carte à partir d’un point de latitude et de longitude (5.3.1) | complet | complet | full |