web-dev-qa-db-fra.com

Puis-je omettre le nom de domaine pour href dans la balise de base HTML?

Actuellement sur mon site Web, j'utilise une balise de base HTML pour raccourcir les URL dans les balises d'ancrage. Toutes les URL de mon site appartiennent à un domaine. Pour une conformité à 100%, j'utilise une URL absolue. par exemple:

<base href="http://www.example.com/path/to/specialpage/">

J'ai regardé sur Internet pour voir si je pouvais le raccourcir et le laisser fonctionner dans les navigateurs inventés au cours des 10 dernières années. Je voulais faire quelque chose comme:

<base href="/path/to/specialpage/">

Ma question est la suivante: si j'utilisais le code ci-dessus, les principaux navigateurs comme Internet Explorer tomberaient-ils en panne? ou y at-il des bugs dans les principaux navigateurs avec le raccourcissement de cette balise? Je souhaite essayer d'omettre le nom de domaine tout en faisant en sorte que mon site fonctionne toujours avec tous les navigateurs construits au cours des 10 dernières années, même si cela implique d'inclure une balise spéciale pour un navigateur spécifique, il se peut que j'ai besoin de quelque chose comme:

<!-- firefoxpatchID=1 -->
<base href="/path/to/specialpage/">
<!-- endfirefoxpatch -->

Quelle est la solution ici? est-ce que je pourrais juste me passer d'omettre le domaine et chaque navigateur serait heureux ou dois-je faire quelque chose de spécial pour certains navigateurs afin de prendre en compte mon idée?

8
Mike

N ° Le href doit pointer sur un URI absol . Le relatif n'est pas autorisé sur un élément de base.

Cet attribut spécifie un URI absolu qui agit en tant qu'URI de base pour résoudre les URI relatifs.

Le standard HTML5 dit , en référence à l'attribut href de <base>:

L'URL de base du document d'un objet Document est l'URL absolue.

6
Rob