在 Rails 中去除内联 CSS 和 JavaScript
我正在开发 Rails 应用程序,我想知道剥离 CSS 或 JavaScript 块的最佳方法是什么。
<style>
...
</style>
-or-
<script>
...
</script>
我使用 strip_tags 帮助器来处理大部分 HTML,但当内容包含内联 CSS 时,它会留下一堆 CSS。 谢谢
I'm working on a Rails application and I would like to know what's the best way to strip blocks of CSS or JavaScript.
<style>
...
</style>
-or-
<script>
...
</script>
I'm using the strip_tags helper to take care of most of the HTML, but it leaves a bunch of CSS when the content contains inline CSS. Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
尝试使用 Nokogiri 库:
Nokogiri 可以做更多,但这就是您在问题中要求的:-)
Try to use Nokogiri library:
Nokogiri can much more, but this is what you asked for in questions :-)
推荐的方法是使用 sanitize 方法。 strip_tags 方法有一定的限制并且不太安全:
如果您使用 sanitize,您会更安全,只需首先列出您打算允许的标签白名单即可。
The recommended way to do this is using the sanitize method. The strip_tags method is somewhat limited and less secure:
If you use sanitize, you will be much more secure, just come up with a white list of tags you intend to allow first.
如果您的应用程序需要用户提供的 CSS,您可以尝试使用 http://github.com /courtenay/css_file_sanitize/tree/master 也是如此。
If you need user-provided CSS for your application, you can try using http://github.com/courtenay/css_file_sanitize/tree/master as well.