我决定最终完成此网页大约一年。令我惊讶的是,代码现在的显示方式与以前不同。我将其范围缩小到将Inline SVG与<use>
标签一起使用,该标签只是停止使用最新的浏览器。我尝试了最新版本的Firefox(68.0.1(和Opera。Firefox是我正在测试的主要浏览器,但(当然(我计划与他人进行测试。
!!编辑!!实际上,我正在使用标识符在SVG文件中引用一个符号,但似乎没有它停止工作,所以让我们从此开始(例如,示例遵循...(。
。
<!DOCTYPE html>
<html lang="en-US">
<head>
<link rel="stylesheet" href="styles.css">
<meta charset="UTF-8">
</head>
<body>
<div>
TEST TEXT
<svg>
<use href="imgs.svg#tst"></use>
</svg>
</div>
</body>
</html>
<!-- THE ACTUAL SVG FILE CALLED imgs.svg -->
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE svg>
<svg xmlns="http://www.w3.org/2000/svg">
<symbol id="tst" viewBox="0 0 100 100">
<circle cx="50" cy="50" r="40" stroke="green" stroke-width="4" fill="yellow" />
</symbol>
</svg>
您是从文件系统而不是从网络服务器运行的。这就是问题。
这是由于最近CVE-2015-7186
解决了安全漏洞现在从文件系统运行的限制更大,基本上您不能再从另一个文件引用一个文件。我们正在讨论在Bug 1565509中该怎么做,但是由于我们目前匹配Safari,我不确定我们是否更改以匹配Chrome或Chrome会更改以匹配我们。
与此同时,使用Web服务器或将引用文件转换为数据URI并将其嵌入到父文档中。