【发布时间】:2013-10-27 12:57:33
【问题描述】:
我正在尝试调整来自 http://html5up.net 的一些模板以与 Flask 一起使用。静态 HTML 页面可以很好地加载目录结构
/website
/css
/js
/images
index.html
但对于 Flask 它必须是
/website
/templates
index.html
/static
/css
/js
/images
在 javascript 和图像文件之前添加 /static 可以正常工作,并且它们会按预期显示。但是,css 文件的链接位于<noscript> 标签内,我无法在主 html 页面中找到它们。我尝试过绝对和相对寻址,并将样式表移动到目录结构中的不同位置,但没有运气。我只是得到一个没有 CSS 样式的丑陋页面。
如果我删除标签,那么它可以正常加载以供桌面使用,但是当使用平板电脑或手机查看时,页面将不再适应。
原始标题的摘录:
<head>
<script src="js/jquery.min.js"></script>
<script src="js/config.js"></script>
<noscript>
<link rel="stylesheet" href="css/skel-noscript.css" />
<link rel="stylesheet" href="css/style.css" />
<link rel="stylesheet" href="css/style-desktop.css" />
</noscript>
<!--[if lte IE 9]><link rel="stylesheet" href="css/ie9.css" /><![endif]-->
<!--[if lte IE 8]><script src="js/html5shiv.js"></script><![endif]-->
</head>
以及我期望的工作,但没有
<head>
<script src="/static/js/jquery.min.js"></script>
<script src="/static/js/config.js"></script>
<noscript>
<link rel="stylesheet" href="css/skel-noscript.css" />
<link rel="stylesheet" href="/static/css/style.css" />
<link rel="stylesheet" href="/static/css/style-desktop.css" />
</noscript>
<!--[if lte IE 9]><link rel="stylesheet" href="/static/css/ie9.css" /><![endif]-->
<!--[if lte IE 8]><script src="/static/js/html5shiv.js"></script><![endif]-->
</head>
-编辑-
config.js 的内容
window._skel_config = {
preset: 'standard',
prefix: 'css/style',
resetCSS: true,
breakpoints: {
'1000px': {
grid: {
gutters: 25
}
}
}
};
window._skel_panels_config = {
preset: 'standard'
};
【问题讨论】:
-
noscript 标签只有在禁用 JS 时才会执行。听起来 javascript 包含 CSS 文件,并且 noscript 标记用于包含 CSS 文件,以防 JS 被禁用。检查 config.js 看看它是否对 CSS 做了任何事情。
-
感谢您的评论 - 我已经添加了配置文件的内容。我没有看到任何会因为结构变化而损坏的东西。
-
您可能需要在 config.js 中将
prefix: 'css/style'更改为prefix: '/static/css/style' -
完美 - 非常感谢。