CSS文件中的硬编码URL

tze*_*erb 2 html css asp.net asp.net-mvc jquery

我正在处理的项目在CSS文件中有硬编码的URL,如下所示:

a.edit
{
    background: url(/TestSite/Images/Edit.png) no-repeat top left;
    display: inline-block;
    width: 16px;
    height: 16px;
    padding:1px;
    margin:1px;
    text-indent: -9999px; /* hides the link text */
}
Run Code Online (Sandbox Code Playgroud)

当网站转移到生产时,这些链接会中断.我正在寻找一个解决方案,所以它只适用于网站运行的地方.

这就是我提出的并且它有效,但我想知道是否有更好的方法:

<script>
    $(document).ready(function () {
        $("a.edit").css('background', 'url(' + $("body").data("baseurl") + 'Images/Edit.png) no-repeat top left');
    });
</script>
<body data-baseurl="~/">...</body>
Run Code Online (Sandbox Code Playgroud)

Hac*_*ese 7

CSS处理相对于样式表所在位置的相对URL.利用它,不要在javascript中重写URL.