让用户从 Rails 应用程序的前端修改 css 属性

发布于 2024-09-26 03:26:50 字数 174 浏览 4 评论 0原文

我正在创建一个 cms / 门户,我希望每个用户更改某些 css 属性,即颜色、宽度、背景等,以自定义我的网站的自己的版本。

最好的方法是什么?我已经研究过 sass 但不确定这是否可以从前端进行,因为 css 每次都需要重新编译等?

任何人做过这件事或有任何建议请帮忙。

谢谢 里克

i am creating a cms / portal that i want each user to change certain css properise ie colors, widths, backgrounds etc to customise there own version of my site.

What is the best way to do this ? i have looked into sass but not sure if this is possible from front end as the css would need to be recompiled each time etc ?

Any one done this or got any suggestions please help.

thanks
rick

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

窗影残 2024-10-03 03:26:50

如果您愿意,可以使用 sass,但也可以使用纯 CSS 来完成此操作。使用您喜欢的任何一个。 Sass 不需要为每个请求重新编译,它可以是:

  1. 在部署时预编译
  2. 从控制器提供服务并缓存页面

如果您希望用户仅编辑某些属性,那么您可以使用标准 MVC 方法通过页面缓存为样式表提供服务:

  1. 使用您希望可编辑的列创建样式表模型。
  2. 为您的用户提供一个表单来管理他们的样式表(有一些很好的用于颜色选择器的 jQuery 插件等)。
  3. 从控制器提供样式表(例如路由到 /users/1/stylesheet.css
  4. 缓存使用 caches_page 的样式表输出,以便在将来的请求中静态提供服务。

You can use sass if you like, but it's possible to do this using plain CSS too. Use whichever you prefer. Sass doesn't need to be recompiled for each request, it can be either:

  1. Pre-compiled at deploy time
  2. Served from a controller and page-cached

If you want your users to edit only certain properties then you can use a standard MVC approach to serve your stylesheets with page caching:

  1. Create a stylesheet model with the columns you want to have editable.
  2. Provide your users a form to manage their stylesheet (there are some good jQuery plugins for color selectors, etc.)
  3. Serve the stylesheets from a controller (e.g. routed to /users/1/stylesheet.css)
  4. Cache the stylesheet output using caches_page so it gets served statically on future requests.
‘画卷フ 2024-10-03 03:26:50

让用户编辑 .scss 文件。

使用 codemirror 进行编辑。

Let the user edit an .scss file.

Use codemirror for editing.

SASSS

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文