如何设置背景图像url没有自动前缀的主机在Chrome

How to set background-image url without auto prefixed host in Chrome?

本文关键字:前缀 Chrome 主机 url 何设置 设置 图像 背景      更新时间:2023-09-26

假设index.html的url是http://localhost/index.html

HTML:

<div id='test'></div>
<script>
    var el = document.querySelector('#test');
    el.style.background = 'url("/test.png")';
</script>

输出html将是:

<div id="test" style="background: url(http://localhost/test.png);"></div>

我不想要主机前缀http://localhost。如何防止浏览器的默认行为?

为什么有这个要求?我正在开发一个页面编辑器。我需要发回干净的html后的html被编辑到服务器。

我只是想知道是否有一种优雅的方式来实现它。

尝试添加基本标签…在你的例子中是

<base href="http://localhost" target="_blank">  

,然后在脚本中使用:

el.style.backgroundImage = 'url("test.png")';  

站立//localhost/test.png存在,和记得给div正确的尺寸!