一、URL的概念

统一资源定位符(或称统一资源定位器/定位地址、URL地址等,英语:Uniform Resource Locator,常缩写为URL),有时也被俗称为网页地址(网址)。如同在网络上的门牌,是因特网上标准的资源的地址(Address)。

二、URL的格式

2.1 标准格式

协议类型:[//服务器地址[:端口号]][/资源层级UNIX文件路径]文件名?查询

2.2 完整格式

协议类型:[//[访问资源需要的凭证信息@]服务器地址[:端口号]][/资源层级UNIX文件路径]文件名?查询

其中【访问凭证信息@;:端口号;?查询;#片段ID】都属于选填项。

三、URL的语法规则

比如网址 http://segmentfault.com/html/...,必须遵守以下的语法规则:

scheme://host.domain:port/path/filename

3.1 说明

(1)scheme - 定义因特网服务的类型。最常见的类型是 http
(2)host - 定义域主机(http 的默认主机是 www)
(3)domain - 定义因特网域名,比如 w3school.com.cn
(4):port - 定义主机上的端口号(http 的默认端口号是 80)
(5)path - 定义服务器上的路径(如果省略,则文档必须位于网站的根目录中)。
(6)filename - 定义文档/资源的名称

3.2 URL Schemes

以下是其中一些最流行的 scheme:

Scheme 访问 用于...
http 超文本传输协议 以 http:// 开头的普通网页。不加密。
https 安全超文本传输协议 安全网页。加密所有信息交换。
ftp 文件传输协议 用于将文件下载或上传至网站。
file 您计算机上的文件。

四、URL的类型

4.1 绝对URL

绝对URL(absolute URL)显示文件的完整路径,这意味着绝对URL本身所在的位置与被引用的实际文件的位置无关

4.2 相对URL

相对URL(relative URL)以包含URL本身的文件夹的位置为参考点,描述目标文件夹的位置。

一般来说,对于同一服务器上的文件,应该总是使用相对URL,它们更容易输入,而且在将页面从本地系统转移到服务器上时更方便,只要每个文件的相对位置保持不变,链接就仍然是有效地。

以下为建立路径所使用的几个特殊符号,及其所代表的意义。

(1).:代表目前所在的目录,相对路径。 例如 <a href="./abc">文本</a> 或 <img src="./abc" />
(2)..:代表上一层目录,相对路径。 例如 <a href="../abc">文本</a> 或 <img src="../abc" />
(3)../../:代表的是上一层目录的上一层目录,相对路径。 例如 <img src="../../abc" />
(4)/:代表根目录,绝对路径。 例如 <a href="/abc">文本</a> 或 <img src="/abc" />

五、href的概念

5.1 规范解释

href (Hypertext Reference)指定网络资源的位置,从而在当前元素或者当前文档和由当前属性定义的需要的锚点或资源之间定义一个链接或者关系。

5.2 通俗理解

href 目的不是为了引用资源,而是为了建立联系,让当前标签能够链接到目标地址。

六、src的概念

source(缩写),指向外部资源的位置,指向的内容将会应用到文档中当前标签所在位置。

七、href和src的区别

7.1 请求资源类型不同

(1)href 指向网络资源所在位置,建立和当前元素(锚点)或当前文档(链接)之间的联系。

(2)在请求 src 资源时会将其指向的资源下载并应用到文档中,比如 JavaScript 脚本,img 图片;

7.2 作用结果不同

(1)href 用于在当前文档和引用资源之间确立联系;

(2)src 用于替换当前内容;

7.3 浏览器解析方式不同

(1)若在文档中添加 <link href="style.css" rel="stylesheet"/>,浏览器会识别该文档为 CSS 文件,就会并行下载资源并且不会停止对当前文档的处理。这也是为什么建议使用 link 方式加载 CSS,而不是使用 @import 方式。

(2)当浏览器解析到 <script src="script.js"></script>,会暂停其他资源的下载和处理,直到将该资源加载、编译、执行完毕,图片和框架等也如此,类似于将所指向资源应用到当前内容。这也是为什么建议把 js 脚本放在底部而不是头部的原因。

八、link和@import的区别

两者都是外部引用 CSS 的方式,但是存在一定的区别:

(1)link是XHTML标签,除了能够加载CSS,还可以定义RSS等其他事务;而@import属于CSS范畴,只可以加载CSS。

(2)link引用CSS时,在页面载入时同时加载;@import需要页面完全载入以后再加载。

(3)link是XHTML标签,无兼容问题;@import则是在CSS2.1提出的,低版本的浏览器不支持。

(4)link支持使用Javascript控制DOM改变样式;而@import不支持。

前端面试题-url、href、src 1相关推荐

  1. 前端面试题-url、href、src

    作者:WEBING https://segmentfault.com/a/1190000013845173 一.URL的概念 统一资源定位符(或称统一资源定位器/定位地址.URL地址等,英语:Unif ...

  2. 前端面试题整理(定期更新)

    前言 因为面试的原因,最近又开始关注前端面试题,浏览过网上很多面试题集合,有很多小伙伴整理的很全面,但是我发现其中有很多技术点在当下已不再流行,而面试题一般都是映射开发中常遇到的一些技能和问题,再结合 ...

  3. 【前端】前端面试题整理

    前端和计算机相关知识 你能描述一下渐进增强和优雅降级之间的不同吗 浏览器兼容问题 如何对网站的文件和资源进行优化? 怎么学习前端?怎么接触前端新知识? 关于前后端分离 关于浏览器内核(渲染引擎) 浏览 ...

  4. 前端面试题之浏览器原理篇

    前端面试题之浏览器原理篇 一.浏览器安全 1. 什么是 XSS 攻击? (1)概念 (2)攻击类型 2. 如何防御 XSS 攻击? 3. 什么是 CSRF 攻击? (1)概念 (2)攻击类型 4. 如 ...

  5. 前端面试题总结(js、html、小程序、React、ES6、Vue、全栈)

    前端面试题总结(js.html.小程序.React.ES6.Vue.全栈) 文档描述 本文是关注微信小程序的开发和面试问题, 由基础到困难循序渐进, 适合面试和开发小程序. 并有热点框架(vue re ...

  6. web前端面试题完美整理/涵盖html,CSS、JS、浏览器、Vue、React、移动web。

    本篇文章整理总结了一些前端面试题,涵盖面很广,并且面的都是知名大厂,所以这些题还是很有代表性的,都掌握以后一面基础面应该没什么问题,二面也能应付大半,奉上: css相关 更多教程:https://su ...

  7. WEB前端面试题整理

    WEB前端面试题 文章目录 WEB前端面试题 一.html部分 1.Doctype有什么作用?标准模式与兼容模式有什么区别 2.标准模式与兼容模式(怪异模式)各有什么区别? div1和div2之间的距 ...

  8. 2016年全面前端面试题总结

    web app遇到的一些坑及小技能(持续更新...)  标签,所以数字的部分样式继承了a标签的样式,导致部分样式无效 解决方法:(1)meta 标签加上<meta name="form ...

  9. 身为三本的我就是凭借这些前端面试题拿到百度京东offer的,前端面试题2021及答案

    更新啦!更新啦! 2022年面试题及答案 点进来之后你的噩梦就要来了,接下来你要面对上百道面试题,那么,如果你-- 是个小白菜: 推荐使用2~3周的时间来消化接下来的面试题, 遇到不会的没听说过名词请 ...

最新文章

  1. 微信小程序进度条样式_微信小程序组件progress进度条解读和分析
  2. Android性能优化典范第二季
  3. 基于R的信用评分卡模型解析
  4. iserdese2接口详解_Xilinx Notes.docx
  5. Winform中导出Excel数据量百万级的处理办法-导出为csv文件
  6. python实现图片文件批处理
  7. OpenGL着色器GLSL
  8. jQuery对象与dom对象不能划等号
  9. hadoop生态搭建(3节点)-10.spark配置
  10. 腾讯2019秋招笔试真题
  11. 【.net 深呼吸】项目中是否有必要删去多余的引用
  12. matlab计算macd_matlab计算MACD指标
  13. Python使用OpenCV二值化
  14. 数据可视化之热力图相关系数图(原理+Python代码)
  15. Make sure that `gem install sqlite3 -v '1.3.13' --source 'https://rubygems.org/'` succeeds before...
  16. 交大家简单又好吃的蛋黄酥的做法
  17. EduCoder-Web程序设计基础-html5—表格高级样式的设置-第2关:设置表格的外边框样式
  18. 精美黑色UI版创客新零售系统源码
  19. SUMO(五)—— TraCI练习
  20. Android 选择图片、上传图片之ImagePicker

热门文章

  1. android cpu调度6,关于安卓系统的手机CPU频率和I/O调度器的设置,如何设置才能让手机更流畅,求解释。...
  2. 质量改进与可靠性提升,硬核案例学习在这里
  3. k8s replicaset controller源码分析(1)- 初始化与启动分析
  4. java mail 收 附件_使用 JavaMail 收发邮件,解决中文附件问题
  5. 小车加速减速的c语言,c2控制速度技巧
  6. 学生党使用正版Altium Designer 22并导出IDF文件
  7. Logstash~filter.kv插件使用教程(附带示例)
  8. win7中USB音箱没有声音解决办法
  9. 学妹跑过来抱着我的胳膊让我帮她在Linux上装jdk【手把手教学】
  10. 苹果几是双卡双待_有点不可思议,苹果iPhone 11:真的是支持双卡双待