SVG图片在HTML页面中的四种加载方法

HTML专栏是汇集了一些HTML常常被遗忘的知识,这里算是温故而知新,往往这些零碎的知识点,在你开发中能起到炸惊效果。我们每个人都没有过目不忘,过久不忘的本事,就让这一点点知识慢慢渗透你的脑海。 本专栏的风格是力求简洁明了。

 SVG因为体积小,矢量图的缘故,经常会在html页面中引用此种格式的图形。 具体的有以下几种形式:

方法1,直接在html中添加SVG代码

<!DOCTYPE html> 
<html> 
<body> 
 
<svg xmlns="http://www.w3.org/2000/svg" version="1.1"> 
   <circle cx="50" cy="50" r="40" stroke="yellow" stroke-width="2" fill="red" /> 
</svg>  
  
</body> 
</html> 

方法2,使用 <embed> 标签

<embed>:优势:所有主要浏览器都支持,并允许使用脚本缺点:不推荐在HTML4和XHTML中使用(但在HTML5允许)

<embed src="circle1.svg" type="image/svg+xml" />

方法3,使用 <object> 标签

<object>:优势:所有主要浏览器都支持,并支持HTML4,XHTML和HTML5标准缺点:不允许使用脚本。

<object data="circle1.svg" type="image/svg+xml"></object>

方法4,使用 <iframe> 标签

<iframe>:优势:所有主要浏览器都支持,并允许使用脚本缺点:不推荐在HTML4和XHTML中使用(但在HTML5允许)

<iframe src="circle1.svg"></iframe>

附识:

(1)SVG在线编辑器

 网络上有很多网站提供一种支持在线编辑SVG的JS方法。我们借用成功的经验即可。

www.zuohaotu.com/svg/

c.runoob.com/more/svgeditor/

(2)SVG可用的滤镜

feBlend - 与图像相结合的滤镜 
feColorMatrix - 用于彩色滤光片转换 
feComponentTransfer 
feComposite 
feConvolveMatrix 
feDiffuseLighting 
feDisplacementMap 
feFlood 
feGaussianBlur 
feImage 
feMerge 
feMorphology 
feOffset - 过滤阴影 
feSpecularLighting 
feTile 
feTurbulence 
feDistantLight - 用于照明过滤 
fePointLight - 用于照明过滤 
feSpotLight - 用于照明过滤 

(3)示例代码

 
  1. <?xml version="1.0" standalone="no"?> 
  2. <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"  
  3. "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> 
  4. <svg width="100%" height="100%" version="1.1" 
  5. xmlns="http://www.w3.org/2000/svg"> 
  6. <ellipse cx="300" cy="150" rx="200" ry="80" 
  7. style="fill:rgb(100,100,150); 
  8. stroke:rgb(0,150,0);stroke-width:3"/> 
  9. </svg> 

(4)代码说明

第一行包含了 XML 声明。请注意 standalone 属性!该属性规定此 SVG 文件是否是"独立的",或含有对外部文件的引用。

standalone="no" 意味着 SVG 文档会引用一个外部文件 - 在这里,是 DTD 文件。

第二和第三行引用了这个外部的 SVG DTD。该 DTD 位于 "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"。该 DTD 位于 W3C,含有所有允许的 SVG 元素。

SVG 代码以 <svg> 元素开始,包括开启标签 <svg> 和关闭标签 </svg> 。这是根元素。width 和 height 属性可设置此 SVG 文档的宽度和高度。version 属性可定义所使用的 SVG 版本,xmlns 属性可定义 SVG 命名空间。

HTML是前端页面展示的骨架,应用无处不在,希望某个知识点就能帮助你,欢迎学习GIS的朋友一起交流。 
[《 Openlayers 综合示例200+ 》]
[《 leaflet示例教程100+ 》]
[《 Cesium示例教程100+》]
[《MapboxGL示例教程100+》]

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/166757.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

如何做到低风险的部署与发布?(下)丨IDCF

灰度发布 灰度发布是在金丝雀发布基础上进行延伸&#xff0c;不是将发布分成两批&#xff0c;而是将发布分成不同的阶段/批次发布&#xff0c;每个阶段/批次的用户数量逐级增加。如果新版本在当前阶段没有发现问题&#xff0c;就再扩展用户数量进入下一个阶段&#xff0c;直至扩…

everything的高效使用方法

目录 前言1 everything的简单介绍2 常用搜索3 语法搜索4 正则表达式搜索5 服务器功能 前言 本文介绍everything软件的高效使用方法&#xff0c;everything是一款在系统中快速搜索文件的软件&#xff0c;能够帮助人们快速定位需要查找的文件。首先介绍everything软件的作用和使…

自学人工智能该从哪里开始准备?

随着人工智能技术的飞速发展&#xff0c;越来越多的人对学习人工智能产生了浓厚的兴趣。然而&#xff0c;对于许多初学者来说&#xff0c;不知道如何开始自学人工智能。今天&#xff0c;我将向大家介绍一些自学人工智能的步骤&#xff0c;帮助大家更好地入门这个领域。 第一步&…

基于SSM的奖助学金管理系统的设计与实现

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;Vue 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#xff1a;是 目录…

【MATLAB】史上最全的9种频谱分析算法全家桶

有意向获取代码&#xff0c;请转文末观看代码获取方式~ 大家吃一顿火锅的价格便可以拥有9种频谱分析算法&#xff0c;绝对不亏&#xff0c;知识付费是现今时代的趋势&#xff0c;而且都是我精心制作的教程&#xff0c;有问题可随时反馈~也可单独获取某一算法的代码&#xff08…

基于SSM的焦作旅游协会管理系统设计与实现

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;采用JSP技术开发 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#x…

应用程序生成器:App Builder 2023

DecSoft应用程序生成器 专为小屏幕设备设计&#xff0c;但也可以&#xff08;无需更改&#xff09;部署在平板电脑等较大设备中。 如果您想创建现代桌面和移动应用程序&#xff0c;那么您来对地方了&#xff01;DecSoft App Builder 是一个专业的可视化开发环境&#xff0c;用于…

【LeetCode刷题笔记】链表

141. 环形链表 解题思路: 1. 哈希表 , 最容易想到的方法是遍历所有节点,每次遍历到一个节点时,判断该节点此前是否被访问过。 2. 快慢指针 「Floyd 判圈算法」(又称龟兔赛跑算法)快慢指针从 head 开始走, 慢指针每次只移动1步 ,而 快指针每次移动2步 。 如果在移动的过程…

常用的OLED透明显示屏款式,有几种?

作为OLED透明屏的制造工程师&#xff0c;尼伽小编对这一领域的发展和技术进步有着丰富的经验和深入的理解。在本文中&#xff0c;我将为大家介绍一些关于OLED透明显示屏款式的知识&#xff0c;并探讨其在未来的应用前景。 OLED透明显示屏作为新一代的显示技术&#xff0c;其独特…

实人认证API的出现,让电子化身份验证更加可靠

前言 随着信息技术的快速发展和数字化转型的加速&#xff0c;各种电子化应用正在走进人们的生活中&#xff0c;电子化身份验证也成为了日益普遍的需求。从现在生活中各种App、网站、电商平台等需要身份认证的场景来看&#xff0c;身份验证的确是十分重要的一环。但是&#xff…

监控电脑的软件叫什么丨科普小知识

监控电脑的软件叫电脑监控软件。 电脑监控软件是一种可以监控电脑使用情况的软件&#xff0c;通常具有记录屏幕活动、网站访问、聊天记录等功能。 应用场景 1、企业内部管理&#xff1a;企业管理者可以通过监控电脑软件来监视员工的工作活动&#xff0c;以确保员工遵守公司政…

基于Pyflwdir实现流域的提取(参照官网例子)

本文参照官网例子实现流域的提取,官方GitHub地址如下pyflwdir&#xff1a; 该工具包目前仅支持D8和LDD两种算法&#xff0c;在效率上具有较好的应用性&#xff0c;我用省级的DEM&#xff08;30米&#xff09;数据作为测试&#xff0c;输出效率可以满足一般作业需要。 环境env…

微信怎么发状态?简单教程,一学就会!

微信是一个非常实用的社交应用&#xff0c;不仅提供了基础的聊天功能&#xff0c;还推出了很多其他有趣的功能。比如微信个人状态&#xff0c;这个功能可以让用户随时随地分享自己的心情和动态。那么&#xff0c;微信怎么发状态呢&#xff1f;本文将为大家介绍有关微信发状态的…

三十分钟学会SCALA

SCALA Scala 是一种运行在 JVM上的函数式的面向对象语言。 Scala 是兼容的&#xff1a;兼容 Java&#xff0c;可以访问庞大的 Java 类库&#xff1b;Scala 是精简的&#xff1a;Scala 表达能力强&#xff0c;一行代码抵得上多行 Java 代码&#xff0c;开发速度快。可以让程序…

【快速解决】实验四 对话框 《Android程序设计》实验报告

目录 前言 实验要求 实验四 对话框 正文开始 第一步建立项目 第二步选择empty views activity点击next ​编辑 第三步起名字&#xff0c;点击finish 第四步对 activity _main.xml文件操作进行布局 第五步&#xff0c;建立两个新文件&#xff0c;建立方法如下 SecondA…

文章解读与仿真程序复现思路——电力自动化设备EI\CSCD\北大核心《考虑多重不确定性和潜在博弈的楼宇群电能优化调度策略》

这个标题涉及到楼宇群电能的优化调度策略&#xff0c;并强调了两个重要的方面&#xff1a;多重不确定性和潜在博弈。 楼宇群电能优化调度策略&#xff1a; 这指的是在一个涉及多个楼宇&#xff08;建筑物&#xff09;的群体中&#xff0c;对电能的使用进行优化调度的策略。这可…

矩阵代数概论

矩阵代数 共轭转置 对于矩阵 A [ a i j ] A[a_{ij}] A[aij​]&#xff0c;共轭矩阵被定义为 A ‾ [ a ‾ i j ] \overline{A}[\overline{a}_{ij}] A[aij​]&#xff0c;所以 A A A的共轭转置 A ‾ T A T ‾ \overline{A}^T\overline{A^T} ATAT&#xff0c;其中 A ‾ T \ov…

【Flink】核心概念:并行度与算子链

并行度&#xff08;Parallelism&#xff09; 当要处理的数据量非常大时&#xff0c;我们可以把一个算子操作&#xff0c;“复制”多份到多个节点&#xff0c;数据来了之后就可以到其中任意一个执行。这样一来&#xff0c;一个算子任务就被拆分成了多个并行的“子任务”&#x…

单图像3D重建AI算法综述【2023】

计算机视觉是人工智能的一个快速发展的领域&#xff0c;特别是在 3D 领域。 本概述将考虑一个应用任务&#xff1a;2D 和 3D 环境之间的转换。 在线工具推荐&#xff1a; Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在线转换 - 可编程3D场景编…

python趣味编程-5分钟实现一个蛇梯游戏(含源码、步骤讲解)

蛇梯游戏是用Python编程语言开发的,它是一个桌面应用程序。 这个Python蛇梯游戏可以免费下载开源代码,它是为想要学习Python的初学者创建的。 该项目系统使用了 Pygame 和 Random 模块。 Pygame 是一组跨平台的 Python 模块,专为编写视频游戏而设计。 此游戏包含 Python …