【问题标题】:add relative path - incorrect添加相对路径 - 不正确
【发布时间】:2012-10-20 08:46:38
【问题描述】:

我有图像中显示的目录结构。

如果我在HomePage.ss 中有此代码

<img src="../../images/sprites.jpg" />

为什么这个相对路径不正确? Failed to load the given url.

【问题讨论】:

标签: html image relative-path src silverstripe


【解决方案1】:

Silverstripe 使用标签,因此所有相对 url 都是相对于根 url 而不是当前页面 url。

接受的答案是链接到主题中的图像的正确方法

【讨论】:

    【解决方案2】:

    关于 SilverStripe,您需要了解的是它会读取您的模板并输出它们。 因此,如果您有 url mysite.com/home,那么文件看起来就像位于文件夹 /home 内,如果您的 url 是 mysite.com/page/subpage,它将看起来好像文件夹是 /page/subpage

    这意味着您可以在模板中使用诸如“../images/sprites.jpg”之类的相对路径(但您可以在 css 中使用这些路径)。

    正如@Mark 在评论中已经提到的,要走的路是使用$ThemeDirm,它将输出到主题文件夹的路径,所以你的图像应该是这样的:&lt;img src="$ThemeDir/images/sprites.jpg" /&gt;

    【讨论】:

      【解决方案3】:

      根据 Silverstripe 的文档,您可以使用框架 URL 访问您的图像:

      <img src="$ThemeDir/images/sprites.jpg" alt="">
      

      【讨论】:

      • 伙计,我不知道为什么,但这会起作用&lt;img src="themes/simple/images/sprites.jpg"&gt;
      • 你在框架环境中吗?然后框架会为你解决这个问题,所以你的主题 url 由你的框架提供。
      • 是的,我正在使用 silverstripe 的框架。好吧,现在我知道这很有帮助。
      • 文档中没有吗?主题网址?
      • 我认为在这个页面中:doc.silverstripe.org/framework/en/topics/theme-development 它记录了如何访问图像
      【解决方案4】:

      如果您不知道路径,则从 URL 加载图像,并放置正确的 url...

      示例:

      img src="http://www.yourwebsite.com/themes/simple/images/img/sprite.jpg"

      右键,点击浏览器查看图片位置,复制正确的url。

      【讨论】:

      • 显然我想避免这种情况。
      • 请看这里../../simple/images/img/sprite.jpg
      • 图片在 images 文件夹中。不是 img 文件夹。
      【解决方案5】:
      img src="../../../images/sprites.jpg"
      
      img src="../../../images/**img**/sprites.jpg"
      

      【讨论】:

        猜你喜欢
        • 2012-08-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-10-05
        • 2016-12-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多