gpt4 book ai didi

javascript - 有人可以告诉我从字符串中删除特定内联 CSS 样式的最佳方法吗?

转载 作者:行者123 更新时间:2023-11-30 10:35:08 29 4
gpt4 key购买 nike

我有一个包含 html/CSS 的字符串(该字符串是使用富文本编辑器创建的)。数据被多个应用程序使用,一些应用程序按原样使用格式,一些应用程序尝试将新格式应用于数据。我们对 html 没有任何问题,因为它很容易删除这些数据。

我不确定从字符串中删除特定 CSS 的最佳方法是什么。仅供引用...某些字符串可能不包含 CSS...我正在考虑使用正则表达式..但不太确定它是否是一个万无一失的方法....

我知道我们可以使用下面的方法来删除

document.getElementById("whatever").className = "";
$('whatever').remmoveClass();

但这会删除所有 CSS 样式。

例如:我只需要从下面的文本中删除下面的内联 CSS

<style type="text/css"> p { text-indent: 0pt;padding: 0px 0px 0px 0px;margin-top: 0px;margin-right: 0px;margin-bottom: 12px;margin-left: 0px;text-align: left;font-family: 'Verdana';font-style: Normal;font-weight: normal;font-size: 16px;color: #000000; } .defaultDocumentStyle { telerik-style-type: default;telerik-style-name: defaultDocumentStyle;font-family: 'Verdana';font-style: Normal;font-weight: bold;font-size: 10.6700000762939px;margin-bottom: 12px; } </style><p><span>ddfggfg</span></p>

我只需要ddfggfg

编辑:该字符串可能不一定是 html 字符串,因为它们也可以使用简单的文本编辑器,因此我不能假设该字符串将包含 HTML。

我主要在将数据导出为 CSV/PDF 时遇到此问题。内联 CSS 类与数据一起导出。

谢谢,
巴拉尼

最佳答案

您需要解析 HTML 并删除 style="" 和可能的 class="" 属性。

使用 jQuery:

var dom = $('<div>' + source + '</div>');
dom.find('*').removeAttr('style');
var cleaned = dom.html();

您可能还需要 .find('style').remove() 它们。

关于javascript - 有人可以告诉我从字符串中删除特定内联 CSS 样式的最佳方法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14445023/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com