2015-09-07 66 views
0

我目前正在遵循Ruby on Rails教程,但我似乎犯了一個我似乎無法理解的錯誤。如果你問我,我會說這是一個語法錯誤,但我不知道在哪裏。無法識別HTML/CSS div在Ruby on Rails應用程序中

在我的HTML.ERB文件中,我創建了一個名爲columns的div。在這個專欄div我也有一個主要的div。在我的CSS文件中,我嘗試將一些CSS命令分配給我的div。奇怪的是#main div沒有被突出顯示,當運行應用程序時,主div也沒有得到我剛分配給它的東西,就像白色的背景顏色。任何人都可以幫助我嗎?我有一種感覺,我正在做一個愚蠢的錯誤

HTML.ERB文件:

<!DOCTYPE html> 
<html> 
<head> 
    <title>Pragprog Books Online Store</title> 
     <%= stylesheet_link_tag "application", media: "all", "data-turbolinks-track" => true %> 
     <%= javascript_include_tag "application", "data-turbolinks-track" => true %> 
     <%= csrf_meta_tags %> 
</head> 

<body class='<%= controller.controller_name %>'> 
    <div id="banner"> 
     <%= image_tag("logo.png") %> 
     <%= @page_title || "Pragmatic Bookshelf" %> 
    </div> 
    <div id="columns"> 
     <div id="side"> 
      <ul> 
       <li><a href="http://www....">Home</a></li> 
       <li><a href="http://www..../faq">Questions</a></li> 
       <li><a href="http://www..../news">News</a></li> 
       <li><a href="http://www..../contact">Contact</a></li> 
      </ul> 
     </div> 
     <div id="main"> 
      <%= yield %> 
     </div> 
    </div> 
</body> 

CSS文件:

#columns { 
    background: #141; 

    #main { 
    margin-left: 17em; 
    padding: 1em; 
    background: white; 
    } 
} 

感謝您的幫助!

+0

您使用SCSS語法嗎? –

+0

是的,我不好。它似乎是一個文件擴展名的問題,因爲我保存在.css而不是.css.scss中。感謝您指點我! :) – Robin

回答

0

該解決方案正在改變我的文件擴展名。我保存到.css.scss而不是.css,現在它可以工作。

+0

只是爲了澄清,你不是編輯CSS然後,你正在編輯一個sass文件。 Sass是一個CSS預處理器,它可以讓你更容易編寫你的css,但它必須被預編譯到css中供瀏覽器理解。 –

1

您似乎在嘗試爲您的CSS規則使用更少的語法。 CSS不允許嵌套選擇器。你的這個:

#columns { 
    background: #141; 
} 

#columns #main { 
    margin-left: 17em; 
    padding: 1em; 
    background: white; 
}