0

是否有任何方法可以去除 FCKeditor 提交给服务器的不需要的背景内容(外部 css)?

目前,许多用户直接从 Web 内容或从外部编辑器(如 MS Word 7)复制,在将数据存储到数据库时在后台添加不需要的内容。例如,当我从 MS Word 7 复制粘贴的内容时,它会添加如下所示的内容,但在 IE 7/8 中呈现内容时会产生问题,Mozilla 呈现完美。我正在使用 PHP 和 MySQL。

<p>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />

<meta content="Word.Document" name="ProgId" />

<meta content="Microsoft Word 12" name="Generator" />

<meta content="Microsoft Word 12" name="Originator" />

<link href="file:///C:\Users\Albert\AppData\Local\Temp\msohtmlclip1\01\clip_filelist.xml" rel="File-List" />

<link href="file:///C:\Users\Albert\AppData\Local\Temp\msohtmlclip1\01\clip_themedata.thmx" rel="themeData" />

<link href="file:///C:\Users\Albert\AppData\Local\Temp\msohtmlclip1\01\clip_colorschememapping.xml" rel="colorSchemeMapping" /><!--[if gte mso 9]><xml>

<w:WordDocument>

<w:View>Normal</w:View>

<w:Zoom>0</w:Zoom>

<w:TrackMoves />

<w:TrackFormatting />

<w:HyphenationZone>21</w:HyphenationZone>

<w:PunctuationKerning />

<w:ValidateAgainstSchemas />

<w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>

<w:IgnoreMixedContent>false</w:IgnoreMixedContent>

<w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>

<w:DoNotPromoteQF />

<w:LidThemeOther>NL</w:LidThemeOther>

<w:LidThemeAsian>X-NONE</w:LidThemeAsian>

<w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript>

<w:Compatibility>

<w:BreakWrappedTables />

<w:SnapToGridInCell />

<w:WrapTextWithPunct />

<w:UseAsianBreakRules />

<w:DontGrowAutofit />

<w:SplitPgBreakAndParaMark />

<w:DontVertAlignCellWithSp />

<w:DontBreakConstrainedForcedTables />

<w:DontVertAlignInTxbx />

<w:Word11KerningPairs />

<w:CachedColBalance />

<w:UseFELayout />

</w:Compatibility>

<m:mathPr>

<m:mathFont m:val="Cambria Math" />

<m:brkBin m:val="before" />

<m:brkBinSub m:val="&#45;-" />

<m:smallFrac m:val="off" />

<m:dispDef />

<m:lMargin m:val="0" />

<m:rMargin m:val="0" />

<m:defJc m:val="centerGroup" />

<m:wrapIndent m:val="1440" />

<m:intLim m:val="subSup" />

<m:naryLim m:val="undOvr" />

</m:mathPr></w:WordDocument>

</xml><![endif]--><!--[if gte mso 9]><xml>

<w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="true"

DefSemiHidden="true" DefQFormat="false" DefPriority="99"

LatentStyleCount="267">

<w:LsdException Locked="false" Priority="0" SemiHidden="false"

UnhideWhenUsed="false" QFormat="true" Name="Normal" />

<w:LsdException Locked="false" Priority="9" SemiHidden="false"

UnhideWhenUsed="false" QFormat="true" Name="heading 1" />

<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 2" />

<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 3" />

<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 4" />

<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 5" />

<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 6" />

<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 7" />

<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 8" />

<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 9" />

<w:LsdException Locked="false" Priority="39" Name="toc 1" />

<w:LsdException Locked="false" Priority="39" Name="toc 2" />

<w:LsdException Locked="false" Priority="39" Name="toc 3" />

<w:LsdException Locked="false" Priority="39" Name="toc 4" />

<w:LsdException Locked="false" Priority="39" Name="toc 5" />

<w:LsdException Locked="false" Priority="39" Name="toc 6" />

<w:LsdException Locked="false" Priority="39" Name="toc 7" />

<w:LsdException Locked="false" Priority="39" Name="toc 8" />

<w:LsdException Locked="false" Priority="39" Name="toc 9" />

<w:LsdException Locked="false" Priority="35" QFormat="true" Name="caption" />

<w:LsdException Locked="false" Priority="10" SemiHidden="false"

UnhideWhenUsed="false" QFormat="true" Name="Title" />

<w:LsdException Locked="false" Priority="1" Name="Default Paragraph Font" />

<w:LsdException Locked="false" Priority="11" SemiHidden="false"

UnhideWhenUsed="false" QFormat="true" Name="Subtitle" />

<w:LsdException Locked="false" Priority="22" SemiHidden="false"

UnhideWhenUsed="false" QFormat="true" Name="Strong" />

<w:LsdException Locked="false" Priority="20" SemiHidden="false"

UnhideWhenUsed="false" QFormat="true" Name="Emphasis" />

<w:LsdException Locked="false" Priority="59" SemiHidden="false"

UnhideWhenUsed="false" Name="Table Grid" />

<w:LsdException Locked="false" UnhideWhenUsed="false" Name="Placeholder Text" />

<w:LsdException Locked="false" Priority="1" SemiHidden="false"

UnhideWhenUsed="false" QFormat="true" Name="No Spacing" />

<w:LsdException Locked="false" Priority="60" SemiHidden="false"

UnhideWhenUsed="false" Name="Light Shading" />

<w:LsdException Locked="false" Priority="61" SemiHidden="false"

UnhideWhenUsed="false" Name="Light List" />

<w:LsdException Locked="false" Priority="62" SemiHidden="false"

UnhideWhenUsed="false" Name="Light Grid" />

<w:LsdException Locked="false" Priority="63" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Shading 1" />

<w:LsdException Locked="false" Priority="64" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Shading 2" />

<w:LsdException Locked="false" Priority="65" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium List 1" />

<w:LsdException Locked="false" Priority="66" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium List 2" />

<w:LsdException Locked="false" Priority="67" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Grid 1" />

<w:LsdException Locked="false" Priority="68" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Grid 2" />

<w:LsdException Locked="false" Priority="69" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Grid 3" />

<w:LsdException Locked="false" Priority="70" SemiHidden="false"

UnhideWhenUsed="false" Name="Dark List" />

<w:LsdException Locked="false" Priority="71" SemiHidden="false"

UnhideWhenUsed="false" Name="Colorful Shading" />

<w:LsdException Locked="false" Priority="72" SemiHidden="false"

UnhideWhenUsed="false" Name="Colorful List" />

<w:LsdException Locked="false" Priority="73" SemiHidden="false"

UnhideWhenUsed="false" Name="Colorful Grid" />

<w:LsdException Locked="false" Priority="60" SemiHidden="false"

UnhideWhenUsed="false" Name="Light Shading Accent 1" />

<w:LsdException Locked="false" Priority="61" SemiHidden="false"

UnhideWhenUsed="false" Name="Light List Accent 1" />

<w:LsdException Locked="false" Priority="62" SemiHidden="false"

UnhideWhenUsed="false" Name="Light Grid Accent 1" />

<w:LsdException Locked="false" Priority="63" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Shading 1 Accent 1" />

<w:LsdException Locked="false" Priority="64" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Shading 2 Accent 1" />

<w:LsdException Locked="false" Priority="65" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium List 1 Accent 1" />

<w:LsdException Locked="false" UnhideWhenUsed="false" Name="Revision" />

<w:LsdException Locked="false" Priority="34" SemiHidden="false"

UnhideWhenUsed="false" QFormat="true" Name="List Paragraph" />

<w:LsdException Locked="false" Priority="29" SemiHidden="false"

UnhideWhenUsed="false" QFormat="true" Name="Quote" />

<w:LsdException Locked="false" Priority="30" SemiHidden="false"

UnhideWhenUsed="false" QFormat="true" Name="Intense Quote" />

<w:LsdException Locked="false" Priority="66" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium List 2 Accent 1" />

<w:LsdException Locked="false" Priority="67" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Grid 1 Accent 1" />

<w:LsdException Locked="false" Priority="68" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Grid 2 Accent 1" />

<w:LsdException Locked="false" Priority="69" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Grid 3 Accent 1" />

<w:LsdException Locked="false" Priority="70" SemiHidden="false"

UnhideWhenUsed="false" Name="Dark List Accent 1" />

<w:LsdException Locked="false" Priority="71" SemiHidden="false"

UnhideWhenUsed="false" Name="Colorful Shading Accent 1" />

<w:LsdException Locked="false" Priority="72" SemiHidden="false"

UnhideWhenUsed="false" Name="Colorful List Accent 1" />

<w:LsdException Locked="false" Priority="73" SemiHidden="false"

UnhideWhenUsed="false" Name="Colorful Grid Accent 1" />

<w:LsdException Locked="false" Priority="60" SemiHidden="false"

UnhideWhenUsed="false" Name="Light Shading Accent 2" />

<w:LsdException Locked="false" Priority="61" SemiHidden="false"

UnhideWhenUsed="false" Name="Light List Accent 2" />

<w:LsdException Locked="false" Priority="62" SemiHidden="false"

UnhideWhenUsed="false" Name="Light Grid Accent 2" />

<w:LsdException Locked="false" Priority="63" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Shading 1 Accent 2" />

<w:LsdException Locked="false" Priority="64" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Shading 2 Accent 2" />

<w:LsdException Locked="false" Priority="65" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium List 1 Accent 2" />

<w:LsdException Locked="false" Priority="66" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium List 2 Accent 2" />

<w:LsdException Locked="false" Priority="67" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Grid 1 Accent 2" />

<w:LsdException Locked="false" Priority="68" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Grid 2 Accent 2" />

<w:LsdException Locked="false" Priority="69" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Grid 3 Accent 2" />

<w:LsdException Locked="false" Priority="70" SemiHidden="false"

UnhideWhenUsed="false" Name="Dark List Accent 2" />

<w:LsdException Locked="false" Priority="71" SemiHidden="false"

UnhideWhenUsed="false" Name="Colorful Shading Accent 2" />

<w:LsdException Locked="false" Priority="72" SemiHidden="false"

UnhideWhenUsed="false" Name="Colorful List Accent 2" />

<w:LsdException Locked="false" Priority="73" SemiHidden="false"

UnhideWhenUsed="false" Name="Colorful Grid Accent 2" />

<w:LsdException Locked="false" Priority="60" SemiHidden="false"

UnhideWhenUsed="false" Name="Light Shading Accent 3" />

<w:LsdException Locked="false" Priority="61" SemiHidden="false"

UnhideWhenUsed="false" Name="Light List Accent 3" />

<w:LsdException Locked="false" Priority="62" SemiHidden="false"

UnhideWhenUsed="false" Name="Light Grid Accent 3" />

<w:LsdException Locked="false" Priority="63" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Shading 1 Accent 3" />

<w:LsdException Locked="false" Priority="64" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Shading 2 Accent 3" />

<w:LsdException Locked="false" Priority="65" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium List 1 Accent 3" />

<w:LsdException Locked="false" Priority="66" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium List 2 Accent 3" />

<w:LsdException Locked="false" Priority="67" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Grid 1 Accent 3" />

<w:LsdException Locked="false" Priority="68" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Grid 2 Accent 3" />

<w:LsdException Locked="false" Priority="69" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Grid 3 Accent 3" />

<w:LsdException Locked="false" Priority="70" SemiHidden="false"

UnhideWhenUsed="false" Name="Dark List Accent 3" />

<w:LsdException Locked="false" Priority="71" SemiHidden="false"

UnhideWhenUsed="false" Name="Colorful Shading Accent 3" />

<w:LsdException Locked="false" Priority="72" SemiHidden="false"

UnhideWhenUsed="false" Name="Colorful List Accent 3" />

<w:LsdException Locked="false" Priority="73" SemiHidden="false"

UnhideWhenUsed="false" Name="Colorful Grid Accent 3" />

<w:LsdException Locked="false" Priority="60" SemiHidden="false"

UnhideWhenUsed="false" Name="Light Shading Accent 4" />

<w:LsdException Locked="false" Priority="61" SemiHidden="false"

UnhideWhenUsed="false" Name="Light List Accent 4" />

<w:LsdException Locked="false" Priority="62" SemiHidden="false"

UnhideWhenUsed="false" Name="Light Grid Accent 4" />

<w:LsdException Locked="false" Priority="63" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Shading 1 Accent 4" />

<w:LsdException Locked="false" Priority="64" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Shading 2 Accent 4" />

<w:LsdException Locked="false" Priority="65" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium List 1 Accent 4" />

<w:LsdException Locked="false" Priority="66" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium List 2 Accent 4" />

<w:LsdException Locked="false" Priority="67" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Grid 1 Accent 4" />

<w:LsdException Locked="false" Priority="68" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Grid 2 Accent 4" />

<w:LsdException Locked="false" Priority="69" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Grid 3 Accent 4" />

<w:LsdException Locked="false" Priority="70" SemiHidden="false"

UnhideWhenUsed="false" Name="Dark List Accent 4" />

<w:LsdException Locked="false" Priority="71" SemiHidden="false"

UnhideWhenUsed="false" Name="Colorful Shading Accent 4" />

<w:LsdException Locked="false" Priority="72" SemiHidden="false"

UnhideWhenUsed="false" Name="Colorful List Accent 4" />

<w:LsdException Locked="false" Priority="73" SemiHidden="false"

UnhideWhenUsed="false" Name="Colorful Grid Accent 4" />

<w:LsdException Locked="false" Priority="60" SemiHidden="false"

UnhideWhenUsed="false" Name="Light Shading Accent 5" />

<w:LsdException Locked="false" Priority="61" SemiHidden="false"

UnhideWhenUsed="false" Name="Light List Accent 5" />

<w:LsdException Locked="false" Priority="62" SemiHidden="false"

UnhideWhenUsed="false" Name="Light Grid Accent 5" />

<w:LsdException Locked="false" Priority="63" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Shading 1 Accent 5" />

<w:LsdException Locked="false" Priority="64" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Shading 2 Accent 5" />

<w:LsdException Locked="false" Priority="65" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium List 1 Accent 5" />

<w:LsdException Locked="false" Priority="66" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium List 2 Accent 5" />

<w:LsdException Locked="false" Priority="67" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Grid 1 Accent 5" />

<w:LsdException Locked="false" Priority="68" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Grid 2 Accent 5" />

<w:LsdException Locked="false" Priority="69" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Grid 3 Accent 5" />

<w:LsdException Locked="false" Priority="70" SemiHidden="false"

UnhideWhenUsed="false" Name="Dark List Accent 5" />

<w:LsdException Locked="false" Priority="71" SemiHidden="false"

UnhideWhenUsed="false" Name="Colorful Shading Accent 5" />

<w:LsdException Locked="false" Priority="72" SemiHidden="false"

UnhideWhenUsed="false" Name="Colorful List Accent 5" />

<w:LsdException Locked="false" Priority="73" SemiHidden="false"

UnhideWhenUsed="false" Name="Colorful Grid Accent 5" />

<w:LsdException Locked="false" Priority="60" SemiHidden="false"

UnhideWhenUsed="false" Name="Light Shading Accent 6" />

<w:LsdException Locked="false" Priority="61" SemiHidden="false"

UnhideWhenUsed="false" Name="Light List Accent 6" />

<w:LsdException Locked="false" Priority="62" SemiHidden="false"

UnhideWhenUsed="false" Name="Light Grid Accent 6" />

<w:LsdException Locked="false" Priority="63" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Shading 1 Accent 6" />

<w:LsdException Locked="false" Priority="64" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Shading 2 Accent 6" />

<w:LsdException Locked="false" Priority="65" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium List 1 Accent 6" />

<w:LsdException Locked="false" Priority="66" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium List 2 Accent 6" />

<w:LsdException Locked="false" Priority="67" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Grid 1 Accent 6" />

<w:LsdException Locked="false" Priority="68" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Grid 2 Accent 6" />

<w:LsdException Locked="false" Priority="69" SemiHidden="false"

UnhideWhenUsed="false" Name="Medium Grid 3 Accent 6" />

<w:LsdException Locked="false" Priority="70" SemiHidden="false"

UnhideWhenUsed="false" Name="Dark List Accent 6" />

<w:LsdException Locked="false" Priority="71" SemiHidden="false"

UnhideWhenUsed="false" Name="Colorful Shading Accent 6" />

<w:LsdException Locked="false" Priority="72" SemiHidden="false"

UnhideWhenUsed="false" Name="Colorful List Accent 6" />

<w:LsdException Locked="false" Priority="73" SemiHidden="false"

UnhideWhenUsed="false" Name="Colorful Grid Accent 6" />

<w:LsdException Locked="false" Priority="19" SemiHidden="false"

UnhideWhenUsed="false" QFormat="true" Name="Subtle Emphasis" />

<w:LsdException Locked="false" Priority="21" SemiHidden="false"

UnhideWhenUsed="false" QFormat="true" Name="Intense Emphasis" />

<w:LsdException Locked="false" Priority="31" SemiHidden="false"

UnhideWhenUsed="false" QFormat="true" Name="Subtle Reference" />

<w:LsdException Locked="false" Priority="32" SemiHidden="false"

UnhideWhenUsed="false" QFormat="true" Name="Intense Reference" />

<w:LsdException Locked="false" Priority="33" SemiHidden="false"

UnhideWhenUsed="false" QFormat="true" Name="Book Title" />

<w:LsdException Locked="false" Priority="37" Name="Bibliography" />

<w:LsdException Locked="false" Priority="39" QFormat="true" Name="TOC Heading" />

</w:LatentStyles>

</xml><![endif]--><style type="text/css">
4

3 回答 3

2

在 fckconfig.js 中设置:

FCKConfig.ForcePasteAsPlainText = true ;

强制用户将他们的副本粘贴为纯文本

于 2010-01-12T20:01:24.020 回答
1

对于我用 PHP 编写的 Web 应用程序来说,这是一个令人恼火的问题。我最终使用 'w:' 和 'StartFragment' 的任何实例搜索有问题的字符串strpos(),如果找到任何一个,我调用 PHP 函数strip_tags();

然后我提醒用户格式化丢失,并建议在应用程序中完成格式化,而不是在 MS Word 中。

完全不完美,是的,但适用于我的用户。

于 2011-01-14T16:21:34.287 回答
0

我怀疑您在这里没有答案的原因是这是一个古老的问题,据我所知,没有真正好的解决方案。这也是最令人愤怒的,因为在我看来,Word 不应该在复制和粘贴中包含所有这些无关的数据。除了它会导致您看到的布局问题之外,它还会阻止您的页面验证。

通常当我需要从 Word 复制到 HTML 编辑器时,我会先复制并粘贴到记事本或其他纯文本编辑器中,然后再次重新选择所有文本并从记事本复制到 HTML 编辑器中。这意味着所有与单词相关的垃圾都会被丢弃。由于我工作的大多数网站通常都是商业网站,我给我的客户同样的建议,除非有人忘记了奇怪的问题,他们很乐意这样做,而且效果很好。显然,如果将 html 输入到您的站点的普通公众会有点棘手,但您至少可以提供某种咨询信息。

一些编辑器,例如 TinyMCE,提供从 word 中粘贴的按钮。虽然这很好地尝试了去除所有单词数据,但我仍然发现它小于 100%,所以暂时我只是避免从 Word 直接粘贴到 HTML 编辑器中。

抱歉,我无法提供更好的消息,但除非其他人有更好的建议方法,否则这是我能做的最好的,恐怕

于 2010-01-12T12:37:19.817 回答