hexo生成的静态页本地打开css引用不到?

发布于 2022-09-02 20:34:24 字数 261 浏览 7 评论 0

<link rel="stylesheet" href="/css/style.css" media="screen" type="text/css">

改成这样<link rel="stylesheet" href="css/style.css" media="screen" type="text/css">本地就通过浏览器可以直接打开预览了,为什么hexo要这样生成?有没有什么办法可以生成下面那个样子的?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

萌梦深 2022-09-09 20:34:24

题主难道是直接在 public 目录打开的?

这就跟 / 的作用有关系了,/ 开头指代的是当前根目录。
假如你的文件位置是 D:/Hexo/public/index.html,那这个 / 就是表示 D 盘根目录。所以CSS最终访问的是 D:/css/style.css
而当你把 public 下的内容上传后,这个根目录就是服务器的根目录,也就是当前目录,自然可以访问到了。

一般本地都是用 hexo s 开启本地服务器预览的。

再说下不加 / 会导致的问题。
首先,在你博客主页不会有任何问题,因为不加 / 就表示当前目录。而如果是博客子页面,比如文章页的网址为 www.blog.com/20160530/hello.html,这个页面里没有 / 那问题就来了,这个路径下能找到 css 文件吗?

万劫不复 2022-09-09 20:34:24

在配置文件中图片描述

も让我眼熟你 2022-09-09 20:34:24

这个要看你的主题里面怎么写的。你找找你用的主题里面,看 <head></head> 部分的代码组织,那里可以看到如何修改 css 引用文件的地址。

举个例子,像 Random 这个主题,就是在这里定义 css 的引用路径,layout/head.swig43 行

{{ css(theme.stylesheets) }}

是引用了主题配置文件中的 stylesheets 项,再看 _config.yml 中的 36 行

stylesheets:
- /css/random.css
- /css/vegas.min.css
- /css/highlight-railscasts.css
- /css/jquery.fancybox.css
- /css/iconfont/iconfont.css
- /css/jquery.fancybox-thumbs.css
- /css/plyr.css

这就可以改好了。

渔村楼浪 2022-09-09 20:34:24

url_for函数。

云柯 2022-09-09 20:34:24

必须放在 source 目录下面

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文