html中什么是数据链接?

【探索】链接数据连线html | d3 绘制连线 参考https://www.w3cplus.com/svg/svg-markers.html效果代码<svg width="600px" height="100px"> <defs> <marker id="arrow" markerWidth="10" markerHeight="10" refx="0" refy=& 阅读详情

数据链接(data url)

将目标文件的数据(二进制)直接写到路径位置。

如何书写

默认情况下是写保存着图片数据的文件夹路径,然后浏览器根据路径找到这个保存图片数据的文件夹,然后把文件夹里面的数据读取出来,然后解析数据显示成图片。

<img src="./img/a.jpg"/>

语法:data:MIME类型,数据 这样就表示这里使用的是数据而不是路径

dataurl的意思是我不写数据的路径,而是直接将数据写在src上
不只是图片,js文件和css文件都可以用同样的方式

<link rel="stylesheet" href="data:text/css,h1{color:blue;}"/>

ps: 计算机上所有数据都是由二进制表示的包括图片,由二进制计解析成图片

请求: 我从我的电脑中向服务器发送消息,获取一些资源(比如html文件,图片等,请求就是跟服务器说我要哪些资源)。

响应: 服务器接收到了客户端的一条消息: 我需要服务器上某个的html页面,于是服务端将哪个html页面返回给客户端。这个过程就是响应。

客户端(浏览器)拿到这些html代码后,浏览器读HTML代码时,发现代码里有css路径、图片路径于是又向服务器请求图片和CSS样式,然后又响应,最后渲染(绘制)页面。

我们把text.css存储在本地和data url做对比,我们在network里可以看到使用传统的url方式需要请求本机文件,而用data url没有请求本地文件,因为data url相当于把数据嵌入在了html中。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<meta name="viewport" content="width=device-width, initial-scale=1">
		<!-- 会请求服务器文件 -->
		<link rel="stylesheet" href="text.css"/>
		<!-- 不会请求服务器文件 -->
		<link rel="stylesheet" href="data:text/css,h1{color:red}"/>
		<title></title>
	</head>
	<body>
		<h1>data url</h1>
		<h2>传统 url</h2>
	</body>
</html>

使用传统的url方式的text.css,可以看到页面发起了两次请求一次html文件本身,一次是css文件的本机请求。
在这里插入图片描述

可以看到使用data url的方式是和html文件一起请求过来,data url的方式就相当于是将数据直接嵌入到html中和html一起请求过来。
在这里插入图片描述

意义

优点:

  • 减少了浏览器中的请求(不用请求文件,因为你直接把数据写到路径上了)。

  • 减少了请求中浪费的时间。

  • 有利于动态生成数据

缺点:

  • 增加了资源的体积(文件变大,文件内容变多了)
    导致传输内容增加(由于html内容增加,所以大小就增加了),从而增加了单个资源传输时间。

  • 不利于浏览器的缓存
    浏览器通常会缓存(以前请求过的不会重新请求而是直接拿缓存的文件)图片文件、css文件、js文件,数据链接不会缓存。

  • 使用base64会增加原来的体积的4/3

其实上面的缓存也是有办法缓存的,就是把data url嵌入到css的background中,即: background: url(data:MIME-type,数据)。由于css文件会被浏览器缓存,这样data url数据也会跟着css文件被缓存。

应用场景

  • 但请求单个图片体积较小,并且该图片因为各种原因不适合做雪碧图,可以使用数据链接

  • 图片由其他代码动态生成,并且图片较小,可以使用数据链接

base64:
一种编码方式,用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法。

什么是可打印字符?
就是用户能从显示器上看的到的字符。

什么是控制字符?
是出现于特定的信息文本中,表示某一控制功能的字符,比如回车、换行、退格等。

ASCII中0~31及127(共33个)是控制字符或通信专用字符,其余为可打印字符。

在data url中为什么要先将图片转为base64呢?为什么不直接使用图片的二进制数据呢?

<img src="data:image/gif;base64,R0lGODlhAwADAIAAAP///8zMzCH5BAAAAAAALAAAAAADAAMAAAIEBHIJBQA7" width="100px" height="100px"/>

因为你是通过文本编辑器打开的,文本编辑器只能支持字符的形式,所以你不能直接将二进制数据写入到html文件,你自己将二进制的数据写入到html文件中会被表示成字符而不是二进制数,所以需要在data url的后面指明将图片数据编码成base64来表示。

ps: html文件也算一种文本编辑器

python解析html数据,获取到的链接是以/或 ./ 或 ../ 开头的相对链接,不是以http开头的,需要补全 阅读详情

相关推荐

Unity类银河战士恶魔城学习总结(P103之前 Enemy相关 , 骷髅战士,状态机,敌人状态,)

udemy的Alex银河战士恶魔城,记录我自己的学习,代码会逐渐每一p更新,仅供参考学习。

suzh1qian的博客 1633

data-link属性的用法

$('.data-span').data('linkId');

qq_35870288的博客 1万+

英飞凌ADS开发环境搭建全流程:从安装到第一个程序烧录

本文详细介绍了英飞凌ADS开发环境搭建的全流程,包括环境准备、ADS安装与配置、MemTools烧录技巧等关键步骤。针对嵌入式开发者,特别提供了从安装到第一个程序烧录的实战指南,涵盖常见问题解决方案和优化建议,帮助开发者快速上手英飞凌AURIX系列微控制器的开发工作。

qsc901234的博客 334

html嵌入原始数据,关于javascript:如何在HTML页面上显示原始JSON数据

本问题已经有最佳答案,请猛点这里访问。Possible Duplicate:JSON pretty print using JavaScript我想在HTML页面上显示我的原始JSON数据,就像JSONVIEW一样。例如,我的原始JSON数据是:{"hey":"guy","anumber":243,"anobject":{"whoa":"nuts","anarray":[1,2,"three"],...

weixin_34851528的博客 436

adb详细教程(四)-使用adb启动应用、关闭应用、清空应用数据、获取设备已安装应用列表

adb对于安卓移动端来说,是个非常重要的调试工具。通过ADB可以操作、管理设备上的应用。

公众号|软件测试老吴 3万+

解决UE5像素流三大痛点:鼠标锁定/双光标/自动播放(附app.js魔改指南)

本文针对UE5像素流服务在实际应用中常见的鼠标锁定、双光标和自动播放三大交互痛点,提供了深入的技术分析和解决方案。通过详细解析app.js源码,指导开发者如何修改控制方案、修复光标显示以及实现静音自动播放,旨在提升Pixel Streaming应用的用户体验与专业度。

weixin_28025327的博客 382

科普 | 典型的知识库/链接数据/知识图谱项目

从人工智能的概念被提出开始,构建大规模的知识库一直都是人工智能、自然语言理解等领域的核心任务之一。下面首先分别介绍了早期的知识库项目和以互联网为基础构建的新一代知识库项目。并单独介绍了典型的中文知识图谱项目。 1. 早期的知识库项目 Cyc  :  Cyc 是持续时间最久,影响范围较广,争议也较多的知识库项目。Cyc 是在 1984 年由 Douglas Lenat 开始创建。

开放知识图谱 7469

3D Slicer肺部CT病灶体积测量:阈值法实操全流程

在医学影像分析中,病灶体积的精准测量是肿瘤评估、疗效随访和科研统计的重要基础。传统逐层手动勾画不仅耗时,且主观差异大,而基于CT值的阈值分割技术,通过设定灰度区间自动提取目标体素,能够快速生成三维分割结果,具有高效、可重复、边界标准统一的优势,尤其适用于肺部实性结节这类与周围肺实质对比度高的病灶。理解体素与CT值的关系,掌握阈值范围的设定逻辑,并配合连通域分析、边缘修正等工程化操作,即可在3D Slicer中稳定获得可靠的体积数据。本文从技术原理出发,系统梳理了DICOM导入、窗宽窗位调节、阈值选择、三维重

weixin_29050271的博客 251

链接数据Linked Data的深层解读

在信息爆炸的时代,数据的互联和共享已经成为推动科技进步和社会发展的重要基石。Linked Data(链接数据)作为一种新兴的数据共享与管理技术,不仅提供了结构化数据的统一访问方式,更构建了一个互联互通的数据生态系统。随着Web技术的发展,数据之间的连接能力已经从静态的超链接转变为动态的语义链接,使数据资源得以更高效地互联互通。本文将从基础概念入手,全面解读Linked Data的原则、技术、应用及未来发展趋势,帮助读者深刻理解这一技术的潜力与重要性。

cooldream2009的博客 1576

硬件基础(4):(7)ADC电压采集:软件校准(标定、拟合)

在实际项目中,**软件端校准**可以有效弥补硬件方面(分压电阻误差、放大器失调、参考源误差等)带来的系统性偏差,从而提高 ADC 测量精度。下面是一个常见的**多点实测校准**流程与思路,个人感觉传感器标定的原理也只这样。

FCZlll的博客 6244

加速访问Cloudflare的网站的解决方案

本文主要介绍了加速访问Cloudflare的网站的解决方案,希望能对大家有所帮助。通过软件计算得到最快的IP地址的效果图如下图所示,具体解决方案参考下文。 在这里插入图片描述 文章目录 1. 问题描述 2. 解决方案

weixin_43178406的博客 1万+

深入解析数据库中的连接方法:四种关键技巧

在数据库处理中,掌握四种常用的连接方法对于提高数据处理效率和准确性至关重要。通过理解它们的工作原理和应用场景,我们可以更灵活地处理各种数据连接需求。希望本文的介绍和案例能够帮助您更好地理解这些连接方法并在实际应用中运用它们。👇热门内容👇python使用案例与应用_安城安的博客-优快云博客软硬件教学_安城安的博客-优快云博客Orbslam3&Vinsfusion_安城安的博客-优快云博客网络安全_安城安的博客-优快云博客教程_安城安的博客-优快云博客。

anananajiushiwo的博客 2520

基于半经验模型的熔断器燃弧过程计算与分析

本文针对1200V/1250A熔断器建立电弧燃烧半经验模型,通过ANSYS计算弧前时间,结合熔体烧蚀、石英砂烧蚀等物理过程简化建模。模型引入电导率随温度变化函数,利用Matlab拟合实验数据确定参数。分析表明:熔体宽度和节距增加会提高弧压峰值并缩短过零时间;总长固定时,断口数和节距影响较小。弧压峰值需控制在额定电压3倍内,过零时间需满足安全裕度。通过Python代码复现了电弧电导率模型、能量平衡方程及弧压计算,验证了熔体结构尺寸对电弧特性的影响规律。

huanghm88的专栏 259

html怎么链接单元格,html中链接excel表格数据库-如何在html中链接excel

如何在html中链接excel你在sheet2和sheet3需要显示相同内容的单元格内输入=,然后点击sheet1中的需要显示的单元格。例如:sheet1a3:中国我想在sheet2中显示相同的内容于是就点击sheet2中的任意单元格,例如为也是a3,输入”=“,然后再点击sheet1中的a3,再点enter,就好了。sheet3也是同样的方法excel单元格中如何插入html代码?这个你只能用动...

weixin_34310322的博客 852

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

html如何倒进excel,html链接到excel表格数据-html怎么把链接加到每一个表格数据后面...

怎么用js将excel中的数据读取后显示到网页中的表格?将htm文档中的表格转换为Excel工作表的具体步下:一、第一步开需要转换的htm文接下来进入到编辑页面中,然后点击打开左上角的文件,如下图所示。二、第二步,接下来在弹出来的窗口中选择打开“另存为”,如下图所示。三、第三步,接下来在弹出来的窗口中点击打开“保存类型”,然后选择“Excel工作薄”,接下来点击保存即可,如下图所示。html怎么把...

weixin_31663397的博客 683

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

前端二向箔03-HTML元数据和链接

03 HTML元数据和链接 html元数据即在head标签中的部分, 主要是描述了网页的一些重要的信息和媒体链接. 大多情况下是提供给浏览器爬虫和机器阅读的. 链接作为网页的互联的基石, 在head中链接有link和script两种形式. 本文归纳常见的元数据和链接的重要知识. 元数据 head head本身没有意义, 只提供保存容器, 是Document的元数据集合. 不会在页面上显示, 且只有一个title和base. title 网页html文档标题, 而非网页内容标题( h1~h6),

不困的博客 520

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

html如何链接excel文件,html链接到excel表格数据-怎么用html实现excel表格

在HTML5中如何读取Excel中的数据并且在火狐浏览器...将htm文档中的表格数据转换Excel表的具体步骤如下:一、第一步,打开需要转换的htm文档下来进入到编辑页面中,然后点击打开左上角件,如下图所示。二、第二步,接下来在弹出来的窗口中选择打开“另存为”,如下图所示。三、第三步,接下来在弹出来的窗口中点击打开“保存类型”,然后选择“Excel工作薄”,接下来点击保存即可,如下图所示。HTM...

weixin_39966020的博客 3464

html 页面调用js链接并显示数据

html 页面调用js链接并显示数据一、测试页面1<!doctype html><html><div id='dv'></div><script src="http://qt.gtimg.cn/q=sz399001" charset="gb2312"></script><script > ...

weixin_33726318的博客 1771

html里面column的超链接,添加href超链接到数据表中的行或字段

我已经看到很多关于这个的问题,但是我似乎无法得到它的工作。添加href超链接到数据表中的行或字段我有一个数据表,但我无法得到它的工作。我用引导程序使用python-flask,并使用to_html()将熊猫数据框更改为html表格。iduserstatus111211,并在机身的底部,我有:$(document).ready(function() {$('#dataTables-example')...

weixin_35682426的博客 567

怎么把js获得的list数据加上链接定向显示在HTML中,并且点击对应内容会访问链接内容

    想把从后台获取的list数据显示在指定的标签位置,比如从后台获取到了某门课程的章节列表,然后将他们分别输出到对应的位置,并且为每个章节设置对应的链接,点击这个链接就可以访问相应的章节视频。    如果要把js的内容输出到HTML的位置,需要通过getElementById()来通过标签的ID定位,用innerHTML设置要显示的信息,下面的语句中e.title是获取的章节名称,给他加上&l...

Agnesyuan的博客 2078

iOS中加载HTML数据,并点击图片或链接进行相应的操作

开发中,有时候我们需要展现HTML类型的数据,这时候,我们多数选择用UIWebView加载,但是当我们需要加载大量的HTML数据时,使用UIWebView加载,性能会降低,尤其是当UITableViewCell需要放大量的HTML数据时,如果你用UIWebView加载这些HTML数据,你会发现,tableview会有卡顿的现象。 那怎样去优化这个卡顿现象呢?我们知道WKWbebView的加载速度

努力,可能成功!放弃,注定失败! 1671

Html网页链接数据库验证账户密码(新手)

连接代码(其中用到了连接池,不要忘记Jar包、拉入配置文件和工具类): 1 package cn.Wuchuang.Servlet; 2 3 import org.springframework.jdbc.core.JdbcTemplate; 4 5 import javax.servlet.ServletException; 6 impor...

weixin_30905981的博客 5878

PHP如何向html页面传递数据,如何使用PHP + HTML在超链接中传递数据库值

我在名为Artists的数据库中有一个表。 它包含两个乐队。 我想这样做是为了能够在带点击使用超链接名称,发送带命名到另一个PHP页面来处理如何使用PHP + HTML在超链接中传递数据库值超链接语法我已经抛出了错误:$query = "SELECT * FROM artists";$result = mysql_query($query);while($row = mysql_fetch_arr...

weixin_42405890的博客 845

requests-html视频网站解析:提取视频链接与元数据

你是否还在为从视频网站提取资源而烦恼?面对复杂的网页结构和动态加载的内容,普通的网页解析工具往往束手无策。本文将带你使用requests-html这款专为人类设计的Pythonic HTML解析库,轻松搞定视频链接与元数据的提取,让你从此告别繁琐的手动操作。读完本文,你将掌握requests-html的核心功能,学会处理静态和动态加载的视频网站,并能够举一反三,应用到各种实际场景中。 ## 项目...

gitblog_00900的博客 729

html中超链接使用_如何使用Pandas read_html从HTML表格中获取数据

在本Pandas教程中,我们将详细介绍如何使用Pandas read_html方法从HTML中获取数据。首先,在最简单的示例中,我们将使用Pandas从一个字符串读取HTML。其次,我们将通过几个示例来使用Pandas read_html从Wikipedia表格中获取数据。在之前的一篇文章(关于Python中的探索性数据分析)中,我们也使用了Pandas从HTML表格中读取数据。在...

weixin_29000891的博客 724
上一篇: css的auto值是什么意思
下一篇: css居中的总结
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值