2011-03-04 131 views
4

我应该使用什么来在CSS中设置我的Flash消息样式?我似乎无法改变它的造型。这里是我的应用程序布局的<body>中的相关代码:Flash格式的CSS样式

<div class="container"> 
     <%= render 'layouts/header' %> 
     <section class="round"> 
     <div id= "notice"> 
      <% flash.each do |key, value| %> 
      <div class="flash <%= key %>"> 
       <%= value %> 
      </div> 
      <% end %> 
     </div> 
     <%= yield %> 
     </section> 
     <%= render 'layouts/footer' %> 
     <%= debug(params) if Rails.env.development? %> 
    </div> 

相关的原始CSS是这样的,但目前没有工作。

.error, .alert, .notice, .success, .info {padding:0.8em;margin-bottom:1em;border:2px solid #ddd;} 
.success {background:#e6efc2;color:#264409;border-color:#c6d880;} 
+0

什么是CSS样?什么是生成的HTML输出? – NullUserException 2011-03-04 05:37:50

+0

发布了CSS ... – 2011-03-04 05:44:03

+0

对于您正在使用的HTML和CSS,这应该起作用。你确定你的头文件中包含CSS文件吗?如果是Rails教程,你应该在你的布局中将'layout'/ stylesheets''渲染得更远一些,它应该有'stylesheet_link_tag'blueprint/screen',:media =>'screen''(在'应用程序/视图/布局/ _stylesheets.html.erb')。见[这里](https://github.com/BinaryMuse/rails-book/blob/master/app/views/layouts/application.html.haml#L8)和[这里](https://github.com/ BinaryMuse/rails-book/blob/master/app/views/layouts/_stylesheets.html.haml)(尽管我使用的是Haml)。 – 2011-03-04 05:50:26

回答

0

看起来像CSS类调用.notice,但该div有一个ID代替。

EDIT

的CSS没有响应闪光 或<%=关键%>类,但它是 响应通知的ID。 不幸的是,如果我使用 通知ID的样式,则出现一些样式, 应该取决于 是否是Flash消息。我怎样才能 解决这个

你可以添加一个条件测试周围的DIV:

<% unless flash.empty? %> 
    <div id="notice"> 
    <% flash.each do |key, value| %> 
     <div class="flash <%= key %>"> 
     <%= value %> 
     </div> 
    <% end %> 
    </div> 
<% end %> 
+0

有问题的代码是:'

<%= value %>
',而不是它上面的线。 – 2011-03-04 06:21:39

+0

好吧,好吧!什么,我现在必须*现在读*问题?啧。 – zetetic 2011-03-04 08:45:27

+0

你能否删除这个答案,以提供更多的问题的可见性? Thx – apneadiving 2011-03-04 09:07:02

2

要么添加一个规则父DIV ID为通知:

#notice { 
    css_formatting_here 
} 

或者添加规则为子divs:

.flash { 
    css_formatting_here 
} 

错误容器的子div有多个由空格分隔的类。 flash就是其中之一。因此,您可以为该类添加CSS规则,它将起作用。

在这里寻找更多这样的例子:Hidden features of CSS

+0

好的,下面就是发生了什么事。 CSS没有对Flash或<%= key %>类作出响应,但它正在响应通知ID。不幸的是,如果我使用通知ID进行样式设计,则会出现一些样式,取决于是否存在闪光消息。我该如何解决这个问题 – 2011-03-04 17:48:23

+0

@Justin Meltzer - 你可以提供一个原始HTML输出的问题,而不是Rails代码? – 2011-03-04 20:03:58

+0

这没有帮助。它只是显示一个div,里面有文字,ID为'notice'这里是我所有的代码:https://github.com/meltzerj/sample_app – 2011-03-04 20:06:14

0

在你的CSS文件类型:

.alert-success { 
    dosomestyling; 
} 

.alert-danger { 
    dosomestyling; 
}