【问题标题】:CSS file not properly linking to html when in separate folders在单独的文件夹中时,CSS 文件无法正确链接到 html
【发布时间】:2019-11-06 21:49:14
【问题描述】:

我在将 css 文件链接到 index.html 时遇到问题。如果它在同一个文件夹中,那么它可以工作,但如果我将 CSS 文件移动到上面的一个文件夹,即使使用 ../ 符号,它似乎也会失败。这是带有文件目录设置的代码图片。 Seperate Folder

不应该"../src/index.css" 上一个文件夹,然后下到src/去查找文件吗?

【问题讨论】:

标签: html css


【解决方案1】:

将你的 index.css 文件放入公共文件,并使用此命令将其添加到你的 index.html 文件中

<link rel="stylesheet" href="%PUBLIC_URL%/../style.css" />

您不能将文件放在根级别并从 index.html 链接它。但是通过添加单独的组件来对样式做出最好的反应。

【讨论】:

  • 如果我将 index.css 公开,那么它只适用于 href="index.css"。我在不使用 React 时也遇到了这个问题
  • 你不能从根路径访问 CSS,这是这里的主要交易。
  • 难道我不能用相对路径访问它吗?
【解决方案2】:

摆脱./,从../开始

../ will take you to the root of your project and the you can traverse to the required file from there.

<link rel="stylesheet" href="../path-to-file.css" />

【讨论】:

  • 我在第二张图片中尝试过(问题),但它不起作用
  • 在这种情况下,您需要将 css 文件移动到公共文件夹中,您的所有资产(如图像、css 等)都必须可公开访问,移动后您可以使用 &lt;link rel="stylesheet" href="%PUBLIC_URL%/path-to-file.css" /&gt; 希望这有帮助
【解决方案3】:

/ 符号开始您的路径,您每次都将使用绝对网址。也就是说,使用href="/src/App.css" 但是,看起来您使用的是框架而不是普通的 HTML/CSS。如果您的文件正在编译到实际的 Web 应用程序中,您将需要使用最终输出的路径,而不是源位置,但您的框架会为此提供一个变量,您可以将其添加到路径的开头而不是/

(使用像../ 这样的相对路径的问题是,您必须更改文件层次结构中每个不同级别的路径,这会导致不一致和错误。绝对路径对于每个文件中的应用程序。)

【讨论】:

  • 我认为 React 是一个库,而不是一个框架,但无论哪种方式,我都不知道 HTML/CSS 可以编译。我也不知道相对路径的问题。谢谢你清楚的解释!这让我发疯了。
【解决方案4】:

您是否使用静态服务器运行 index.html 文件?如果是,则转到根目录并运行

static-server -i ./public/index.html

-i 用于手动提供索引文件。

如果您在公用文件夹中运行静态服务器,它不会从根目录中获取 css。将 href 保留为“../index.css”。它有效。

【讨论】:

    【解决方案5】:

    看起来您正在使用 react 和 create-react-app 对吗?如果您是,那么您将无法从其中访问该文件夹之外的任何内容,因为反应环境是使用公共文件夹作为唯一可公开访问的文件夹构建的。

    所以这是放置 img 文件夹之类的好地方。您在这里有 2 个选择。您可以将全局 css 文件放在公共文件夹中,然后从您的 html 文件链接到它。您还可以在 public 文件夹中创建一个 css 文件夹来存储您的 css 文件。

    或者大多数人只是将 css 文件导入到组件中。因此,对于您的全局 css,您只需将其导入 index.js 或 app.js 文件,如下所示:

    import './index.css'
    

    但是尝试访问从公用文件夹中的文件到公用文件夹之外的文件的任何内容是不行的。

    【讨论】:

    • 我没有意识到 react 环境施加了这种限制,谢谢!
    猜你喜欢
    • 2020-11-01
    • 1970-01-01
    • 1970-01-01
    • 2023-02-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-18
    相关资源
    最近更新 更多