我有一个这样的视图:
index.html.php:
/**......
...... Some code......
**/
<link ... href="???????">
/**.....
..... Some code .....
.....**/
应该使用哪条路线??
我的css在:myproject/web/bundles/myfolder/css/purple.css中,但是没有成功
PD: index.html.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Lionel Richemond - Multimedia Designer</title>
<link type="text/css" rel="stylesheet" href="web/bundles/LionelBundle/css/purple.css" />
文件命名为"index.php"。您不需要.html.php。现在,您可以在.php文件中编写完整的html,这将自行工作。像往常一样,将链接标签包含在html代码的头部部分,那里没有变化。现在,在需要执行一些php工作的地方,只需添加
<?php ?>
像往常一样使用标记并删除代码。php将根据它在html中的位置在页面内执行。例如,如果它位于html标记之上,它将在呈现任何html之前全部执行。如果你的php块生成了一个表,你需要把这个块放在你写表的地方,如果它是在html中(不是在你的html标签上面)。
我认为你的问题是你的路径不正确。您正在使用一个相对路径。如果你的index。php文件在C:/web/site1/index。php而你的css文件在C:/web/site1/purple。css那么你的link href应该是purple。css。如果index.php和purple.css所在的css/文件夹在同一个目录下,那么你的链接href就应该是css/purple.css。检查相对路径
你似乎对这个问题很陌生,所以我将从头开始工作,你可以从那里澄清事情。
这里是基本的。让我们简化你的层次结构,假设你的项目是这样组织的:
- 。
- 包
- mycss.css
- index . php
- 包
让我们假设你的网站根路径指向MyProject,所以你的URL看起来像这样:
http://mysite.ext/index.php
如果你想在index.php页面中包含CSS,它看起来像这样:
<link rel='stylesheet' type='text/css' href='bundles/mycss.css' />
当浏览器看到这个时,它会相对于它认为正在执行的文件进行查找。如果它认为它正在加载/index.php,那么你就成功了。然而,如果你有MVC样式的路由,相对路径将不起作用。假设你的路由看起来像这样:
http://mysite.ext/controller/action
如果是这种情况,浏览器将查找:
http://mysite.ext/controller/bundles/mycss.css
要解决这个问题,你需要使用一个从你的根目录开始的URL,像这样:
<link rel='stylesheet' type='text/css' href='/bundles/mycss.css' />
通过在路径前面添加斜杠,浏览器知道从基本URL开始,而不是试图从它认为它所在的目录开始。