首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何在css文件中编写ruby代码

如何在css文件中编写ruby代码
EN

Stack Overflow用户
提问于 2010-07-21 23:49:13
回答 5查看 4.2K关注 0票数 3

我有一个rails应用程序,其中我需要一个css文件,它的属性可以通过ruby代码进行更改。例如。返回背景颜色%>的background_color :<%=拼音代码

因此用户可以设置其css属性,并将像主题一样仅适用于该用户。

谢谢!

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2010-07-22 00:05:43

查看这个截屏视频,它解释了如何使用ERB ( Rails模板系统) http://nubyonrails.com/system/images/css-erb-small.mov设置动态CSS文件。

票数 0
EN

Stack Overflow用户

发布于 2014-04-22 18:03:53

你不能/不应该这样做。您将预编译您的资产,因此无法动态适应不断变化的变量。这是一个不好使用的模式。

一种更简单的方法是在您的元素(body)上添加一个类.active .inactive。或者在你的头脑中输出内联css,用于自定义颜色等,这取决于登录的用户。

你想做什么?这听起来像是你在检查自己是在生产还是在开发?在这种情况下,你可以这样做:

代码语言:javascript
代码运行次数:0
运行
复制
<body class='<%= "development" if Rails.env == 'development' %>'>

甚至是

代码语言:javascript
代码运行次数:0
运行
复制
<body <%= "style='background-color: red;'" if Rails.env == 'development' %>

你永远不需要在css和javascript中使用ruby,如果你发现自己在这么做,你可能用了错误的方法。至少这是我在多次尝试做好这件事后发现的。

你可以在你的脑海中这样做:

代码语言:javascript
代码运行次数:0
运行
复制
<style>
    .user .name{
       color: <%= current_user.chosen_color %>;
    }
</style>

附注:数据属性是将变量等传递给javascript的一种非常有效的方法

第2页。这是我在这里的答案的改编:Creating scss variable in config.rb for scss files我认为它也适用于任何来这里的人,所以我也在这里回答了。

票数 3
EN

Stack Overflow用户

发布于 2010-07-21 23:57:14

另外,请看一下http://lesscss.org/

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3301195

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档