解决UEditor样式被过滤问题实战

在 UEditor 中插入 Bilibili 视频 属性,或者使用 CSS 样式和响应式布局,可以轻松解决 Bilibili 视频宽高太小的问题。推荐使用 CSS 的响应式方案,以确保视频在不同设备上的兼容性和美观性。在 UEditor 中插入 Bilibili 视频时,默认的 iframe 嵌入代码可能会导致视频宽高太小,影响观看体验。如果你希望更灵活地控制视频的大小,可以使用内联样式或外部 CSS 来定义宽高。如果视频无法正常播放,检查网络连接是否正常,以及嵌入代码是否完整。为了适配不同屏幕尺寸,可以使用百分比设置宽高。属性,指定视频的宽度和高度。 阅读详情

上周开发中有用到开源的富文本编辑器UEditor,在使用的过程中遇到了样式被过滤无法显示问题,经过一番折腾终解决,此外,还有一些关于获取前台界面元素的一些总结。

1. UEditor样式被过滤无法显示问题
         上周有用到百度开源的富文本编辑器----UEditor.不得不说这个富文本编辑器做的真的很赞,个人觉得比CKeditor要好用很多,效果也很不错。
但是在使用的过程中,有遇到在向文本编辑器插入HTML文本时,添加的样式老是被过滤掉,找了很多的资料,并结合最新的版本,整理了下如何解决样式过滤的方法。
我们在富文本编辑页点击HTML小图标,切换到HTML模式,然后在该模式下加入如下HTML:

1
2
3
4
5
6
<style type="text/css">
.bg{ background:lightbule;}
</style>
<div class="bg">
Hello EveryBody Welcome To UEditor World!
</div>

以上的html意思很简单,就是为div加了一个名为bg 的样式,
然后我们再点击HTML图标,转换到预览页,可以看到我们的div的背景色并没有任何的变化,而且我们在div之前写的样式,也没有被渲染,
反而是以文本的形式显示了出来。
F12查看整个页面,发现我们之前写的样式和标签都被渲染成如下的html:

1
2
3
4
<div style="display: none;" cdata_tag="style" type="text/css">
<p>
Hello EveryBody Welcome To UEditor World!
</p>

由以上代码可以看出,我们的style标签被转换成了div,并且设置样式为不可见,我们的div标签被转换成了p标签。
这说明编辑器本身自己做了一个转换,类似于一个过滤吧,可能是为了出于安全性考虑,防止用户在前段输入非法的代码、脚本等,事实上我觉得这有点多此一举,
既然都让富文本编辑了,不能写html脚本,还叫什么富文本。
然后我们再点击HTML图标,看看HTML试图,内容如下:

1
2
3
4
<style type="text/css">.bg{ background:lightbule;}</style>
<p>
Hello EveryBody Welcome To UEditor World!
</p>

结合以上分析得出,该编辑器内部过滤机制是将style标记转换为div,而将div等标签以p替代。如何解决呢?
之前有在网上查过相关的资料,都说是在配置文件里有一个黑白名单,然后就在配置文件里找了下,在最新版本的脚本文件里怎么找也没找到那个所谓的黑白名单,
当然了,没有黑白名单也照样可以解决问题的。
首先在ueditor.all.js文件内搜索allowDivTransToP,找到如下的代码,将true设置为false
me.setOpt('allowDivTransToP',false);
//默认的过滤处理
//进入编辑器的内容处理
然后再接着下边的addInputRule方法中将switch代码段中的case style,script都给注释或者删掉。
me.addInputRule(function (root) {
var allowDivTransToP = this.options.allowDivTransToP;
var val;
//进行默认的处理
root.traversal(function (node) {
if (node.type == 'element') {
if (!dtd.$cdata[node.tagName] && me.options.autoClearEmptyNode && dtd.$inline[node.tagName] && !dtd.$empty[node.tagName] && (!node.attrs || utils.isEmptyObject(node.attrs))) {
if (!node.firstChild()) node.parentNode.removeChild(node);
else if (node.tagName == 'span' && (!node.attrs || utils.isEmptyObject(node.attrs))) {
node.parentNode.removeChild(node, true)
}
return;
}

//删除switch下的case style 和script
switch (node.tagName) {
case 'a':
if (val = node.getAttr('href')) {
node.setAttr('_href', val)
}
break;
完成以上操作之后,保存即可。再次插入html时,样式就可以显示了。
解释一下以上操作的意义。
第一步将allowDivTransToP设置为false是因为默认的设置是将div自动转换为p,这样写好的样式就找不到相应的div
了,所以才渲染不上的。
第二步将addInputRule函数中的switch 代码段中的case style ,script选择给删除或者注释,是为了避免出现编辑器将style或script自动的转换成别的标签。
好了,大家可以试一试,看看效果。

RGB接口电容触摸屏驱动(一)模块介绍 阅读详情

相关推荐

YOLOv8工业级增强实战:小目标检测与HDR鲁棒性优化

YOLO(You Only Look Once)作为主流实时目标检测框架,其核心价值在于模块化架构与工程可扩展性。理解YOLOv8的Anchor-Free设计、C2f特征融合机制及Detect头部解耦原理,是实现性能突破的基础。在工业落地中,真实瓶颈往往不是模型版本迭代,而是小目标漏检、高动态范围(HDR)场景适应差、密集遮挡ID断裂等具体问题。通过配置层动态多尺度训练、物理感知数据增强、Neck跨尺度注意力注入、质量感知损失函数升级等七层增强策略,可在不更换主干的前提下显著提升mAP与边缘设备推理效率。本

weixin_32667439的博客 258

每日学习心得:UEditor样式被过滤无法显示问题

前沿:          上周开发中有用到开源的富文本编辑器UEditor,在使用的过程中遇到了样式被过滤无法显示问题,经过一番折腾终解决,此外,还有一些关于获取前台界面元素的一些总结。 1. UEditor样式被过滤无法显示问题          上周有用到百度开源的富文本编辑器----UEditor.不得不说这个富文本编辑器做的真的很赞,个人觉得比CKeditor要好用很多,效果

xuemoyao的专栏 1万+

从GitHub到海浪模拟:手把手教你配置WAVEWATCHⅢ 6.07.0的完整开发与测试环境

本文详细指导如何在Ubuntu系统中配置WAVEWATCHⅢ 6.07.0的开发与测试环境,涵盖虚拟机设置、依赖安装、源码编译及案例验证的全流程。通过步骤化教程,帮助科研人员快速搭建高效的海浪模拟平台,提升海洋数值模拟的研究效率。

weixin_42568801的博客 322

百度UEditor html编辑器模式下 过滤 style alt 等标签解决方式

编辑器的引用方式改为 script 如 <textarea id="c-content" data-rule="required" class="form-control editor" rows="5" name="row[content]" cols="50">{$row.content|htmlentities}</textarea> 改为 <script name="row[content]" class="form-control editor" id="c-co

lows_H的博客 577

大疆 DJI Mobile SDK实战指南——从零构建Android示例开发环境

本文提供了一份详尽的DJI Mobile SDK Android开发环境搭建实战指南。文章手把手教你从注册开发者账号、获取App Key,到配置Android Studio、下载官方示例代码,最终成功运行DJI官方Android示例程序,帮助开发者快速入门无人机应用开发,避开常见编译与依赖问题。

weixin_29188043的博客 273

【Qualcomm高通音频】如何封装音频控件?

音频代码涉及面很广,这篇文档介绍如何封装音频控件给HAL层使用。这里以AW87519芯片调试为例进行介绍封装音频控件和使用的方法。在最初接出到高通音频基础功能调试的时候,都是从tinyalsa指令/mixer_paths文件配置开始。因为单独一个音频设备的调试,都对应一条音频链路的打通。比如以下链接上高通平台基础音频输入输出设备调试: 【Qualcomm音频】Speaker 调试记录http...

crow_ch的博客 1954

解决百度富文本编辑器-Ueditor div、dl、dt、dd过滤替换问题

使用ueditor编辑器中,想保存style标签的样式需要对js配置文件进行修改。官方为了安全考虑,默认会将style标签转为DIV标签,导致样式不能显示出对应的效果。2 找到addInputRule方法,并将switch case 中的case style:删除或注释。1、 找到allowDivTransToP参数,这个参数会将DIV标签转为P标签,设置为false。// xss 过滤是否开启,inserthtml等操作。//output xss过滤。//input xss过滤。

XW-DESIGN 626

基于boot + 双app升级方案

基于boot+双app的升级方案

weixin_44654285的博客 4514

ueditor php接收内容,关于Ueditor获取输入内容默认样式的问题

我想在Ueditor初始化时给输入的内容加上样式,initialStyle配置了但是不好用,只是样式显示了,但是我在Action里得到的内容只是xxxx根本没有加上样式,我想问一下,这东西到底怎么用,如何能在为选择字体和字号的情况下给输入的内容加上一个指定样式,并且可以接收到存入数据库,我调查了一下,使用这个属性的时候编辑器是将样式加载在body的引用css内,只用当选中内容在更改字体和字号的时候...

weixin_39629617的博客 258

PCL 改进快速欧式聚类【2025最新版】

在FEC: Fast Euclidean Clustering for Point Cloud Segmentation一文的基础上对算法进行改进。博客长期更新,本文最近更新时间为:2025年9月16日。

点云侠的博客 2568

网络安全 | 企业网络安全的十大挑战及解决方案

网络安全 | 企业网络安全的十大挑战及解决方案,随着信息技术的飞速发展,企业数字化转型进程不断加速,网络安全问题日益成为企业运营与发展面临的关键挑战。本文深入剖析企业网络安全的十大挑战,包括网络攻击日益复杂、数据泄露风险、内部威胁、物联网安全、云安全、合规性要求、移动办公安全、供应链安全、人才短缺以及安全预算有限等,并针对每个挑战详细阐述相应的解决方案,旨在为企业构建全面、有效的网络安全体系提供指导与参考,助力企业在复杂多变的网络环境中保障自身信息资产安全,实现可持续发展。

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 4万+

ueditor php过滤,使用filterRules过滤ueditor的内容

一、为什么需要使用filterRules在使用富文本编辑器ueditor的时候,有时候需要控制内容,例如:不允许带链接、不允许插入图片、控制内部html的样式等等,除了设置toolbars之外,还要保证粘贴到编辑器里面的内容也能被控制,这时就需要用到filterRules属性了。二、如何使用filterRulesueditor在网站上提供了这样的功能演示,在http://ueditor.baidu...

weixin_39605997的博客 640

ollama使用CPU安装qwen-coder模型_并在eclipse中使用ai coder插件_配置本地qwen-coder模型_ollama常用操作记录---AI大模型应用探索0002

文章摘要:作者分享了在Windows 10上安装和使用Ollama模型的过程。尝试了不同规模的qwen-coder模型(7b、1.5b和0.5b),发现7b模型响应极慢(需35分钟),而1.5b模型表现较好(3秒响应)。最终选择1.5b版本用于代码开发辅助,支持多语言自动补全。同时提到在最新版Eclipse中的AIcoder配置问题。文章重点比较了不同模型规模在CPU环境下的实际使用体验和响应速度差异。

添柴程序猿的专栏 679

UEditor样式被过滤无法显示问题

前言:          上周开发中有用到开源的富文本编辑器UEditor,在使用的过程中遇到了样式被过滤无法显示问题,经过一番折腾终解决,此外,还有一些关于获取前台界面元素的一些总结。 1. UEditor样式被过滤无法显示问题          上周有用到百度开源的富文本编辑器----UEditor.不得不说这个富文本编辑器做的真的很赞,个人觉得比CKeditor要好用很多,效果也很不错

新技术革命 1万+

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

Ueditor编辑器 自动过滤Style内联样式问题

一、修改ueditor.all.js 文件 1 、修改allowDivTransToP属性为false UE.plugins['defaultfilter'] = function () { var me = this; me.setOpt({ 'allowDivTransToP':false, 'disabledTableInTable':tr...

canqinglu9201的博客 1284

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

ueditor插入自定义内容和样式

UEditor是由百度web前端研发部开发所见即所得富文本web编辑器,具有轻量,可定制,注重用户体验等特点 通过UEditor提供的API接口可以很方便的读写操作内容并设置编辑器里的样式 页面中的脚本 <script> $(function () { init(); _template(); }); function _temp...

极客神殿 6294

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

解决UEditor样式被过滤问题

点击编辑源码的时候,加入class或者style,再切回html的时候发现被过滤了 解决办法: 搜索notTransAttrs,这个是配置不需要过滤的属性 var notTransAttrs = { 'href':1, 'src':1, '_src':1, '_href':1, 'class':1, }; 搜索notTransTagName ,这个是配置不需要过滤的标签 var notTransTagName = { pre:..

ydZ157的博客 1163

ueditor 禁止编辑_织梦ueditor百度编辑器div style被过滤解决办法

开发中有用到开源的富文本编辑器UEditor,在使用的过程中遇到了样式被过滤无法显示问题,经过一番折腾终解决,此外,还有一些关于获取前台界面元素的一些总结。1. UEditor样式被过滤无法显示问题上周有用到百度开源的富文本编辑器----UEditor.不得不说这个富文本编辑器做的真的很赞,个人觉得比CKeditor要好用很多,效果也很不错。但是在使用的过程中,有遇到在向文本编...

weixin_35941686的博客 1085

ueditor使用问题

ueditor是一款强大的开源富文本编辑器,但是也有很多bug。以下是使用中遇到的问题汇总,以后不断更新:(版本号为1.2.6.1)

liquanfeng326的专栏 2986

ueditor div style被过滤 解决办法

发广告的

IT技术宅-北方的刀郎 1万+

UEditor去除复制样式实现无格式粘贴

原文地址:https://www.cnblogs.com/rwxwsblog/p/5156189.html作者:秋楓  UEditor内置了无格式粘贴的功能,只需要简单的配置即可。   1、修改ueditor.config.js,开启retainOnlyLabelPasted,并设置为true   2、开启pasteplain,并设为true   3、开启filterTxtRules过滤规...

Icelyoo的博客 2695

ueditor样式过滤问题

1.4.3版本样式过滤处理如下: if (domUtils.isEmptyNode(me.body)) { //alert("xx"); //me.body.innerHTML = '<p>' + (browser.ie ? '' : '<br/>') + '</p>'; me.body.innerH...

weixin_34112208的博客 209

ueditor编辑器处理整张html,关于ueditor编辑器过滤script/style标签的解决方法

关于ueditor编辑器过滤script/style标签的解决方法时间:2020-03-101205 次浏览在网页制作的过程中想通过编辑器添加一些特殊应用,例如要添加视频播放器代码,添加后发现不能正常播放视频,检查代码后发现视频调用代码被无情过滤了,部分被替换成空白、部分被替换成div,造成无法实现网站嵌套视频播放的问题。网上方法不少,大多不能如愿,经多次研究整理一套完整的解决方案。第一步:UEd...

weixin_34932795的博客 716

百度Ueditor编辑器的Html模式自动替换样式的解决方法

百度的Ueditor编辑器出于安全性考虑,用户在html模式下粘贴进去的html文档会自动被去除样式和转义。虽然安全的,但是非常不方便。 打开ueditor.config.js做出如下修改即可: // xss 过滤是否开启,inserthtml等操作 xssFilterRules: false //input xss过滤 inputXssFilter: false //output x

zhangyunpengchang的专栏 9134
上一篇: Spring动态配置多数据源
下一篇: Java 中的resultset详解
架构师的清醒
博客等级 码龄14年 291粉丝 397原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值