【问题标题】:import whole files in the Directory在目录中导入整个文件
【发布时间】:2015-02-22 06:23:41
【问题描述】:

我需要导入特定文件夹 (css) 中可用的整个 css 文件 有没有不逐个文件导入的方法?

需要导入 assets/css/* 吗?

    <link href="<?php echo base_url(); ?>assets/css/*" rel="stylesheet"/>
        <title>Untitled Document</title>
        <style>
            #area {
                max-width: 600px;
            }
        </style>


</head>

【问题讨论】:

标签: javascript php html css head


【解决方案1】:

编辑: 答案似乎晚了,您已经接受了答案。如果我知道,我不会提交这个。我正忙于测试和制定它。

正如我在评论中所说,您可以使用 PHP 的 glob() 函数以及 foreach 循环来实现此目的。以下是您可以执行的操作:

foreach (glob("*.css") as $css) {
    echo "<link type=\"text/css\" rel=\"stylesheet\" href=\"$css\">\n";
}

在 HTML 源代码中会产生类似于:

<link type="text/css" rel="stylesheet" href="css_1.css">
<link type="text/css" rel="stylesheet" href="css_2.css">
<link type="text/css" rel="stylesheet" href="css_3.css">

根据您的文件所在的位置,您可能需要更改这些文件的路径。

即:

foreach (glob("path/to/css/folder/*.css")

将 PHP 放在 &lt;head&gt;&lt;/head&gt;

例如:

<!DOCTYPE html>

<head>

<?php 

    foreach (glob("*.css") as $css) {
        echo "<link type=\"text/css\" rel=\"stylesheet\" href=\"$css\">\n";
    }

?>

</head>

<body>

    <div id="css_1">Style 1</div>
    <br>
    <div id="css_2">Style 2</div>
    <br>
    <div id="css_3">Style 3</div>

</body>
</html>

【讨论】:

  • 这是我试图找到的。谢谢
【解决方案2】:

我认为您无法通过执行assets/css/* 从文件夹中导入css 文件。但是您可以将 css 文件夹中的文件连接成一个文件,然后将该 css 文件压缩并导入。

您可以使用像gulp 这样的构建工具来完成这件事。看看这个https://www.npmjs.com/package/gulp-minify-css

【讨论】:

    【解决方案3】:

    没有。一方面,客户端不知道要请求什么(每个 http 请求它只能请求一个文件,它需要知道其名称)。您可以通过四种方式做到这一点:

    • 将所有 CSS 文件连接到一个文件中,然后链接到该文件。
    • 拥有一个将所有 CSS 文件连接成一个响应的脚本,然后链接到该脚本
    • 在您的模板中有一个循环遍历所有 CSS 文件,这将为每个文件发出一个 &lt;link&gt; 元素。
    • 如果您只有几个 CSS 文件而不更改,您可以将它们全部手写出来。

    【讨论】:

      猜你喜欢
      • 2023-01-25
      • 1970-01-01
      • 2021-08-30
      • 2013-10-16
      • 2023-02-02
      • 1970-01-01
      • 2023-03-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多