【发布时间】:2014-06-30 12:49:20
【问题描述】:
最近我从另一个开发人员那里接了一个 Rails 项目。
当我在我的 Mac 上启动 Rails 服务器时,布局没有正常呈现:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>My title</title>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type" />
<link href="/assets/store/reset.css?body=1" media="screen" rel="stylesheet" type="text/css" />
...
<head> 标签过早关闭,紧随其后的是 body 标签,这使得所有<meta> 标签和样式表都在头部之外。
但是,当我的一位同事在他的 PC 上启动服务器时,布局会正确呈现。
这是我的布局之一:
<!doctype html>
<html>
<head>
<%= render 'spree/shared/head' %>
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes">
</head>
<body>
<div id="container">
<%= render 'spree/shared/header' %>
<div id="main" role="main" class="clearfix">
<aside id="sidebar" role="complementary" data-hook>
<%= render 'spree/shared/menu_left' %>
</aside>
<div id="content">
<%= yield %>
</div>
</div>
<%= render 'spree/shared/footer' %>
</div> <!--! end of #container -->
</body>
</html>
【问题讨论】:
-
向我们展示一些代码。你确定你运行的是相同的代码吗?
-
是的,我们使用相同的代码
-
您使用不同的浏览器吗?把应该放在头上的东西放在头上。
-
正如你在我的布局中看到的那样,一切都应该在头脑中。这不是客户端问题,因为如果我访问他的服务器,它会正确呈现,而当他访问我的服务器时,它不会
-
@GuiGreg
render 'spree/shared/header'中可能存在语法错误 - 检查该文件。不同的浏览器呈现方式不同。您没有指定哪些浏览器有问题。这可能与 ruby 无关。
标签: html ruby-on-rails ruby layout ruby-on-rails-4