javascript - 在不破坏 CSS/JS 的情况下将旧的静态页面添加到 Rails 应用程序中

标签 javascript html css ruby-on-rails subdomain

我正在对我组装的旧静态网站进行全面检修。正在使用 Rails(4、Ruby 2)构建经过大修的应用程序。我想在新应用程序中包含旧的静态网站,并通过访问 www.classic.my_site.comwww.my_site.com/classic 访问它,但是,新旧站点中使用的许多 CSS 类/ID 名称(由 CSS 和 JS 使用)彼此重叠,因此将旧的 css 和 js 文件添加到新应用程序中会完全搞砸。

添加旧站点文件的最简单方法是什么(只有 3 个文件:index.htmlcustom.cssmy_js.js,除了一些图像)到新站点,而无需重命名所有的 css 类和 id?

是否有任何理由/约定使用一个 URL 而不是另一个(classic.my_sitemy_site.com/classic)?如果 classic.my_site 是要走的路,那么实现它的最佳方法是什么?

谢谢!

最佳答案

免责声明:我可能完全不喜欢这个,这可能不是最佳实践。

因此,Rails 4 会自动将“sass-rails”gem 添加到您的元素中。如果您愿意将文件转换为 scss 文件,您可以简单地创建两个不同的父类:

  • 包含您的旧样式表的
  • 包含您的新样式表的另一个

例如:

旧样式表

.old-stylesheet-parent-class {
    //Copy all your old styles in here
    .main-block{
        background: blue;
        font-size: 12px;
    }    
}

新样式表:

.new-stylesheet-parent-class {
    //Copy all your new styles in here
    .main-block{
        background: red;
        font-size: 16px;
    }    
}

您的标记(旧静态页面):

<html>
    <head>
        <title>My Old Page</title>
    </head>
    <body class="old-stylesheet-parent-class">            
        <div class="main-block">
            <p>Hello World!</p>
        </div>
    </body>
</html>

如果您在父类中包含新旧样式,则这些样式不应再互相干扰。同样,可能有更好的方法来执行此操作,但此方法是一种非常快速的解决方案,几乎不需要任何工作。

祝你好运!希望这有效。

关于javascript - 在不破坏 CSS/JS 的情况下将旧的静态页面添加到 Rails 应用程序中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23017001/

相关文章:

javascript - getElementById 不是显示元素的函数

javascript - 在 d3 中设置旋转方向

javascript - 带有散列标签的 RegEx 问题

javascript - 如何使用 PHP 和 JQuery AJAX 在 <div> 标签中检索和插入 MySQL 数据?

javascript - 向下滚动时标题抖动

javascript - Canvas 时钟应从特定位置开始

php - reCAPTCHA 集中对齐

css - 如何解决生产服务器上的 css 加载问题

javascript - 如果我放置图像幻灯片放映,CSS 菜单无法正常工作

javascript,正则表达式解析大括号中的字符串内容