Ruby on rails 基于数据库信息的动态CSS

Ruby on rails 基于数据库信息的动态CSS,ruby-on-rails,css,ruby,ruby-on-rails-3,dynamic-css,Ruby On Rails,Css,Ruby,Ruby On Rails 3,Dynamic Css,我想知道如何根据数据库中的元素数量动态更改CSS样式 用户可以选择一定数量的列,而他们选择的列数决定了列的宽度(显然,选择的列越多,每列的宽度越小,以便它们在页面上水平分布均匀) 你是如何做到这一点的?听起来很适合使用ahem表格 问题是你不能通过改变CSS来做到这一点,你需要改变HTML <table width="100%"> <tr> <td>..</td> (repeat for the number of columns)

我想知道如何根据数据库中的元素数量动态更改CSS样式

用户可以选择一定数量的列,而他们选择的列数决定了列的宽度(显然,选择的列越多,每列的宽度越小,以便它们在页面上水平分布均匀)

你是如何做到这一点的?

听起来很适合使用ahem表格

问题是你不能通过改变CSS来做到这一点,你需要改变HTML

<table width="100%">
  <tr>
      <td>..</td> (repeat for the number of columns)
  </tr>
</table>

..(对列数重复)

默认情况下,所有表格单元格(TD)的宽度都相同。

您需要在.html.erb中动态分配样式。您可以使用、表格、div、列表-任何您想要的。只需根据列的数量分配不同的类(class=“small”、class=“wide”),并在CSS文件中定义这些类或(可能不太漂亮)可以使用内联样式

例如,在这段代码中,我指定了一个元素的宽度(进行五星评级):

  • 平均值
编辑:如果将类设置为控制器中的变量,这将是视图的一个示例:

<li class=<%= @myclass %>>...</li>

  • 请您展开一下,好吗?也许可以提供一些例子?表格数据?亵渎。是的,偶尔会有一次,这些笨蛋会习惯于他们的本意。这个答案部分是正确的。表格可能很有用,是的,这取决于应用程序。作者在这里不是很具体。“问题是你不能通过改变CSS来做到这一点,你需要改变HTML“这不是真的,在他看来,作者可以改变类/样式来实现几乎任何事情。但是,如果没有真正的任务,很难判断什么是更好的方法……例如,内联列表,然后将样式应用于
      或元素。如果需要,还可以添加不同的样式(例如宽度)到单个列表元素。请不要误会,如果表适合,并且有很好的机会适合,那么它们就可以了。另一种方法是用于更复杂的任务…根据您的教程,我在rails 3.1上尝试了此方法,但没有显示图像。您能帮我吗…您是否将图像放到rails 3.1中的“新资源”文件夹中了?嗨,Markus,我找到了rking…..stars.yellowstars{高度:25px;宽度:0px;背景:url(资产路径(“star.png”,图像))左重复-x;}
      <li class=<%= @myclass %>>...</li>