2011-04-11 75 views
4

我有一个奇怪的问题,我似乎无法用expressjs弄清楚。我为所有静态文件(例如js,css和图像)指定了一个public文件夹。我正在使用app.use(express.static(__dirname + '/public'));指定文件夹。除了一种情况外,这种方法非常有效链接到Expressjs中的静态文件中的静态文件

在公共文件夹里面,我有3个文件夹js,cssimages。在我的一个css文件中,我在做background-image: url(/images/bg.png) no-repeat;,但是这个URL没有解析,图像没有在页面上显示。

但是,如果我在我的某个视图中执行类似img(src='/images/bg.png')的操作,图像将显示。我假设这与我从一个静态文件链接的事实和节点/表达式忽略静态文件中的所有路由(?)。

如何链接到位于静态文件夹中的css文件中的图像?

+0

,当你干脆去'127.0.0.1:yourport/images/会发生什么bg.png'? – generalhenry 2011-04-11 21:49:21

+0

看看css正在查看的真实路径,或者关闭css编译器。 – Raynos 2011-04-11 21:53:12

+0

@generalhenry图片显示在此URL。 – Vaheh 2011-04-11 21:57:01

回答

1

你的CSS网址是relitive的样式让你有网址寻找路径/css/images/bg.png你想拥有的网址是../images/bg.png