html页面统一设置静态资源地址的解决方案--base标签

一,资源路径

在html页面中,路径有两种

相对路径:

<link rel="stylesheet" href="css/owl.carousel.min.css">

绝对路径:

<link rel="stylesheet" type="text/css" href="http://www.eotodo.com/jquery/font-awesome.4.6.0.css">

二,配置统一资源地址

我们在页面中引用资源一般也是通过这两种方式来引入的。

但是在如果想统一制定资源路径的时间,就比较麻烦了。
常用的解决办法是使用配置变量的办法来实现的。

三,HTML 标签

对于base标签,解释是这样的。

标签为页面上的所有链接规定默认地址或默认目标。

通常情况下,浏览器会从当前文档的 URL 中提取相应的元素来填写相对 URL 中的空白。

使用 标签可以改变这一点。浏览器随后将不再使用当前文档的 URL,而使用指定的基本 URL 来解析所有的相对 URL。这其中包括 、、、 标签中的 URL。

四,通过base标签实现静态资源默认地址

base标签的用法

<base href="http://www.eotodo/" />

1,对于页面中的相对路径

页面中的所有相对路径解析,都会以base标签的地址为根目录

比如:

<img src="/eotodo.png" alt="" title="这里是一张图片">

网络请求的地址是:

http://www.eotodo/eotodo.png

2,对于页面中绝对地址的路径

页面中所有绝对路径的请求,都会指向其绝对路径的地址

比如:

<a href="http://www.baidu.com" title="a标签测试">这里是a标签</a>

a标签的点击会跳转到百度

3,对于页面中空地址的路径


下面是一个href路径为“#”的a标签,它在页面上显示的会是base+“#”

<a href="#">这里是一个href值为“#”的a标签</a>



下面是一个href路径为空值的a标签,它在页面上显示的会是base设置的地址

<a href="">这里是一个href值为空的a标签</a>



下面是一个src路径为空的img标签,它得src地址依旧是空,是不会显示出来的

<img src="" alt="123">

4,外联资源

外联:


<link rel="stylesheet" href="/eotodo.css">

<script src="/eotodo.js"></script>



他们的指向会是相对于base路径下的静态资源
http://www.eotodo/eotodo.css
http://www.eotodo/eotodo.js

--Code--

<!DOCTYPE html>
<html lang="en">
<head>
  <base href="https://www.eotodo.com">
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>页面统一静态资源路径的设置base标签</title>
</head>
<body>
  <button></button>
  下面是一个相对路径的img标签,它在页面上的显示会是base路径+设置的相对路径
  <img src="/eotodo.png" alt="" title="这里是一张图片">

  下面是一个正常的a标签,它在页面上显示的href会是设置的href地址
  <a href="http://www.baidu.com" title="a标签测试">这里是a标签</a>

  下面是一个href路径为“#”的a标签,它在页面上显示的会是base+“#”
  <a href="#">这里是一个href值为“#”的a标签</a>

  下面是一个href路径为空值的a标签,它在页面上显示的会是base设置的地址
  <a href="">这里是一个href值为空的a标签</a>

  下面是一个src路径为空的img标签,它得src地址依旧是空,是不会显示出来的
  <img src="" alt="123">


  外联:
  <link rel="stylesheet" href="/eotodo.css">
  <script src="/eotodo.js"></script>

  他们的指向会是相对于base路径下的静态资源
</body>
</html>

--end--

上一篇:UTC世界标准时间转化为正常时间


下一篇:阿里云消息队列Kafka实战经验分享