首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在css URL中使用相对/绝对路径?

如何在css URL中使用相对/绝对路径?
EN

Stack Overflow用户
提问于 2011-04-28 15:57:55
回答 3查看 185.3K关注 0票数 92

我有一个生产和开发服务器。问题出在目录结构上。

开发:

  • http://dev.com/subdir/images/image.jpg
  • http://dev.com/subdir/resources/css/style.css

生产:

  • http://live.com/images/image.jpg
  • http://live.com/resources/css/style.css

如何让css文件夹中的style.css在两台服务器上使用background: url属性的相同路径?有什么技巧可以用在相对路径上吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-04-28 16:01:02

网址是relative to the location of the CSS file,所以这对你来说应该是有效的:

代码语言:javascript
复制
url('../../images/image.jpg')

相对URL返回两个文件夹,然后是images文件夹-只要结构相同,这两种情况都应该有效。

来自https://www.w3.org/TR/CSS1/#url

部分

是相对于样式表源而不是相对于文档URL进行解释的

票数 140
EN

Stack Overflow用户

发布于 2016-08-09 22:01:51

就我个人而言,我会在.htaccess文件中修复这个问题。你应该有权访问它。

将您的CSS URL定义为:

代码语言:javascript
复制
url(/image_dir/image.png);

在您的.htacess文件中,放入:

代码语言:javascript
复制
Options +FollowSymLinks
RewriteEngine On
RewriteRule ^image_dir/(.*) subdir/images/$1

代码语言:javascript
复制
RewriteRule ^image_dir/(.*) images/$1

根据网站的不同。

票数 9
EN

Stack Overflow用户

发布于 2011-04-28 16:11:12

我也有同样的问题。每次我想发布我的css的时候..我不得不搜索/替换..相对路径对我也不起作用,因为从开发到生产的相对路径是不同的。

终于厌倦了搜索/替换,我创建了一个动态css (例如www.mysite.com/css.php)它是一样的,但现在我可以在css中使用我的php常量了。像这样的

代码语言:javascript
复制
.icon{
  background-image:url('<?php echo BASE_IMAGE;?>icon.png');
}

让它动态化也不是一个坏主意,因为现在我可以使用YUI压缩器压缩它,而不会丢失我的开发服务器上的原始格式。

祝好运!

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5815452

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档