1

我正在为好玩而开发的一个简短的 mojolicious webbapp 有问题。

<%= content %>我有一个布局( templates/layouts/default.html.ep ),它在两个模板(templates/form.html.ep 和 templates/pasted.html.ep )中都成功使用,因为我在输出之前写的文本网页,但样式表仅在第一次调用时加载(templates/form.html.ep)。

这是“成功”的电话:

% layout 'default';
%=t h1 => 'LolPaste'
  <div id="form" />
    %=t h1 => 'Let the magic happen'
    %= form_for '/process' => (method => 'post') => begin
      %= label_for Title => 'Title:'
      %= text_field 'Title'
      <br/>
      %= label_for Text => 'Text:'
      %= text_area 'Text', rows => 10, id =>'flex'
      <br/>
      %= submit_button 'click', id => 'button'
    %= end
  </div>

这是“失败”的电话:

% layout 'default';
%=t h1 => 'LolPaste'
<p>Here is your paste !</p>
<div id="pasted">
  %= $poil
  <br/>
</div>

最后是布局:

<!doctype html>
<html>
  <head>
    <title>LolPaste</title>
    <link type="text/css" rel="stylesheet" href="style.css" />
    <link href='http://fonts.googleapis.com/css?family=Autour+One' rel='stylesheet' type='text/css'>
  </head>
  <body>
    test 
    <%= content %>
  </body>
</html>

两次调用都会将“test”一词输出到网页,但样式表无法加载到 pasted.html.ep

ps:style.css在public目录下。

编辑:我忘了问这个问题,即:我做错了什么?我觉得这是一个新手错误,但文档上似乎没有任何内容可以回答我的问题。

4

1 回答 1

2

如果您可以使用这样的绝对路径获取 css 文件:

http://localhost:3000/style.css

您的页面必须像这样获取它:

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

不是这个:

<head>
    <̶l̶i̶n̶k̶ ̶r̶e̶l̶=̶"̶s̶t̶y̶l̶e̶s̶h̶e̶e̶t̶"̶ ̶t̶y̶p̶e̶=̶"̶t̶e̶x̶t̶/̶c̶s̶s̶"̶ ̶h̶r̶e̶f̶=̶"̶l̶o̶c̶a̶l̶h̶o̶s̶t̶:̶3̶0̶0̶0̶/̶s̶t̶y̶l̶e̶.̶c̶s̶s̶"̶>̶<̶/̶b̶>̶
</head>

看到你改变了rel / type定义的顺序..我不这么认为..但也许这就是重点..

此外声明

<link href='http://fonts.googleapis.com/css?family=Autour+One' rel='stylesheet' type='text/css'>

其中包含

@font-face {
    font-family: 'Autour One';
    font-style: normal;
    font-weight: 400;
    src: local('Autour One'), local('AutourOne-Regular'), url(http://themes.googleusercontent.com/static/fonts/autourone/v1/7LzkKwczNE2R2ZQSt90y1RsxEYwM7FgeyaSgU71cLG0.woff) format('woff');
}

包括一个woff文件。它有效,如果你评论这一行?

如果你说它无论如何都不会工作.. mh.. 你使用哪个浏览器?IE8?

如果我能帮助你,请投票..

于 2013-10-19T15:11:25.997 回答