css - 获取 twig 模板以查看 css 文件时遇到问题

标签 css html iis twig

我是 Twig 的新手,但遇到了一些麻烦。我在电脑上使用 wamp64 和 php 版本 7。我的文件结构如下:

C:/composer/vendor/composer
C:/composer/vendor/container-interop
C:/composer/vendor/nikic
C:/composer/vendor/pimple
C:/composer/vendor/psr
C:/composer/vendor/slim
C:/composer/vendor/symfony
C:/composer/vendor/twig

C:/Inetpub/wwwroot/project
C:/Inetpub/wwwroot/project/assets
C:/Inetpub/wwwroot/project/js
C:/Inetpub/wwwroot/project/templates

我有这个名为 bootstrap.php 的文件,我将其包含在我的元素中:

<?php

require_once 'C:/composer/vendor/autoload.php';

$loader = new Twig_Loader_Filesystem('C:/Inetpub/wwwroot/project/templates');

 // Instantiate our Twig
//$twig = new Twig_Environment($loader);
$twig = new Twig_Environment($loader, array('debug' => true));
$twig->addExtension(new Twig_Extension_Debug());
?>

这是我的布局文件,_layout.twig:

<!DOCTYPE html>
<html class="no-js" lang="en">
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <script src="https://code.jquery.com/jquery-1.12.4.js"></script>
    <script src="../js/scripts.js"></script>    

    <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.1.1/css/all.css" integrity="sha384-O8whS3fhG2OnA5Kas0Y9l3cfpmYjapjI0E4theH4iuMD+pLhbf6JI0jIMfYcK3yZ" crossorigin="anonymous">

    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO" crossorigin="anonymous">
    <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>

    <link href="http://localhost/people-on-the-move/css/styles.css" rel="stylesheet">
</head>
<body>
{% block mask %}

{% endblock %}  

{% block submit %}

{% endblock %}
</body>
</html>

这是我的主页,home.html:

{% extends '_layout.twig' %}

{% block mask %}
    {% include 'mask.html' %}
{% endblock %}


{% block submit %}
    {% include 'submit.html' %}
{% endblock %}

但是当我查看 http://localhost/project在我的浏览器中,我看到没有应用任何 CSS。我查看了有关如何添加 css 页面的文档,但发现它非常令人困惑。 css文件需要去哪里?我需要安装其他东西吗? Composer 应该在我的元素目录中吗?任何帮助将不胜感激!

最佳答案

我不知道为什么你会以这种方式使用 twig 而你可以只使用 Symfony。无论如何,根据您的元素设置方式,您的 CSS 应该位于 /people-on-the-move/css/styles.css 正如您的链接标记所建议的那样。如果您使用的是 Symfony,浏览器上的/路径实际上是/public,因此 CSS 应该位于/public/people-on-the-move/css/styles.css。

更好的做法应该是使用 Symfony 中的 Assets 系统,但由于您还没有真正使用 Symfony,所以我会开始在这里寻找:Symfony twig and assets

关于css - 获取 twig 模板以查看 css 文件时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54428290/

相关文章:

html - 如何让 Bootstrap 5 容器适应屏幕高度?

javascript - 在单页网站上替换 Div 的内容

visual-studio - 添加 <mimeMap> 条目会导致 IIS Express 上的其他静态内容出现 500

angularjs - 从 Angular 访问 web api 时出现 401 未经授权的错误

css - 固定div的位置

c# - 解析 CSS 类,但忽略 @media 查询

css - 跨浏览器 - 我的按钮存在美学缺陷

php - WooCommerce:如何在非管理员的添加新产品页面中隐藏自定义字段

c# - 我可以有一段 App_Code 与文件夹的其余部分分开编译吗?

javascript - 带有对齐文档的分屏布局