删除HTML标记的内联样式元素

我想在我的Wordpress菜单中添加一个菜单悬浮动画:

https://www.littlesnippets.net/blog/some-css-menu-inspiration-using-animated-lines

我的Wordpress主题(Avada)以某种方式将内联html样式写入标签:

<ul id="menu-menu" class="fusion-menu">
  <li ><a href="#Home" data-hover="Home" **style="overflow: hidden; height: 100px;**"><span class="menu- 
  text">Home</span></a></li>
  <li ><a href="#Events" data-hover="Events" **style="overflow: hidden; height: 100px;**"><span 
  class="menu-text">Events</span></a></li>
</ul>

...

我将此代码添加到我的functions.php中:

add_filter( 'the_content','the_content_filter',20 );

function the_content_filter( $content ) {
    $content = preg_replace('#<a.*?>(.*?)</a>#i','<a>\1</a>',$content);
    return $content;
}

但是,这删除了我页面上太多的样式元素。如何调整仅删除类.fusion-menu中的内联样式标签的功能?

感谢您的帮助!

fuyesunwang123 回答:删除HTML标记的内联样式元素

$('ul#menu-menu li').attr('style',function(i,style)
{
    return style && style.replace(/display[^;]+;?/g,'');
});

请检查以上代码,它将用jQuery删除

,

我已经尝试使用jQuery,但这无法正常工作,因为我认为该功能必须准确地指向标记。

内联样式来自Fusion Builder模板,但我不知道该函数位于php文件中。

我最喜欢的方法是有人可以用preg_replace完成我的功能,并以选择器类.fusion-menu

中的所有元素作为目标

谢谢...

本文链接:https://www.f2er.com/3010780.html

大家都在问