Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Css 为什么wordpress输出的菜单html之间没有空格<;李>;标签_Css_Wordpress - Fatal编程技术网

Css 为什么wordpress输出的菜单html之间没有空格<;李>;标签

Css 为什么wordpress输出的菜单html之间没有空格<;李>;标签,css,wordpress,Css,Wordpress,我正在使用display:inline块和文本对齐:对齐以使我的主导航居中。新的wordpress 4.4更新似乎输出的html在主标签之间没有空格。还有其他人发现了吗?如何阻止它 例如,我的一个网站——我已经对其进行了黑客攻击,以使其以菜单为中心,但在wordpress改变输出之前,它工作得更好 而不是输出 <ul> <li>Menu item</li> <li>Menu item</li> <li>Menu item&l

我正在使用
display:inline块
文本对齐:对齐以使我的主导航居中。新的wordpress 4.4更新似乎输出的html在主标签之间没有空格。还有其他人发现了吗?如何阻止它

例如,我的一个网站——我已经对其进行了黑客攻击,以使其以菜单为中心,但在wordpress改变输出之前,它工作得更好

而不是输出

<ul>
<li>Menu item</li>
<li>Menu item</li>
<li>Menu item</li>
</ul>
<ul>
<li>Menu item</li></li>Menu Item</li><li>Menu item</li>
</ul>
  • 菜单项
  • 菜单项
  • 菜单项
它正在输出

<ul>
<li>Menu item</li>
<li>Menu item</li>
<li>Menu item</li>
</ul>
<ul>
<li>Menu item</li></li>Menu Item</li><li>Menu item</li>
</ul>
  • 菜单项
  • 菜单项
  • 菜单项
这显然会扰乱整个内联块对齐菜单

无论如何,我看不出要改变这一点,而在线搜索似乎只会带来相反的结果——删除内联块项目之间的空白

谢谢

修复

将其添加到functions.php文件中

// Fix stupid wordpress 4.4 'feature' that breaks justified menus

add_filter('wp_nav_menu_items', 'filter_menu_items');
function filter_menu_items($menu_items){
  return str_replace('</li><li', "</li> <li", $menu_items);
}
//修复wordpress 4.4中破坏对齐菜单的愚蠢“功能”
添加过滤器(“wp\U导航菜单项”、“过滤器菜单项”);
功能过滤器\菜单\项($menu\项){

return str_replace(“在Dave Bloom的帮助下找到了解决方案。

您可以始终使用自定义的
菜单漫游器来呈现菜单…尝试在css中向li添加宽度:100%。例如
ul li{width:100%;}
li::after{content:'}
@dingo\u d我会看一看,谢谢。对于一个仅在wordpress 4.4中介绍的问题,它看起来相当复杂-可能更容易使用flexbox或其他工具来显示menu@KeesSonnema这会影响css的其余部分,因为使用display inline block和justified的原因是它们均匀地使用spacedPerfect!谢谢。我实际上是去向wordpress提交了一个关于4.4版本的bug,但在提交的时候我发现这个bug实际上是一个“功能”,它被提交到wordpress核心来“修复”其他问题,其中
display:inline block;
在元素之间有空格。如果这是一个“修复”,他们不太可能想要修改让我们回到以前更符合逻辑的方法!