更新的WordPress,现在导航混乱了

时间:2011-11-18 作者:cmorris1441

我最近更新了我正在开发的一个朋友网站的WP。现在他的导航栏坏了,我是WP的新手,所以我不知道该去哪里修复它。

以下是网站:http://www.millermusiclessons.com/

导航应该是这样的:http://www.millermusicllc.com/

谢谢

2 个回复
最合适的回答,由SO网友:EAMann 整理而成

不是WordPress把事情搞砸了,而是你的主题。

在“工作”网站上,您的导航栏如下所示:

<ul class="sf-menu sf-js-enabled sf-shadow">
    <li class="page_item page-item-4 current_page_item"><a href="http://www.millermusicllc.com/" title="Home">Home</a></li>
    <li class="page_item page-item-7"><a href="http://www.millermusicllc.com/services/" title="Services">Services</a></li>
    <li class="page_item page-item-11"><a href="http://www.millermusicllc.com/portfolio/" title="Portfolio">Portfolio</a></li>
    <li class="page_item page-item-13"><a href="http://www.millermusicllc.com/about/" title="About">About</a></li>
    <li class="page_item page-item-126"><a href="http://www.millermusicllc.com/testimonials/" title="Testimonials">Testimonials</a></li>
    <li class="page_item page-item-15"><a href="http://www.millermusicllc.com/contact/" title="Contact">Contact</a></li>
</ul>
在破碎的网站上,你名单上的课程都乱七八糟。这只是渲染<ul class="sf-menu"> 这就是导致问题的原因,因为样式表正在基于缺少的类应用布局、颜色、大小和其他样式信息。

那么,看看您创建菜单时使用了什么,以及您可能使用了哪些代码来操作菜单。有些东西并没有像应该的那样将这些类添加到菜单中。

或者您的样式表(第239行附近)具有以下声明:

#top .topmenu ul.sf-menu.sf-js-enabled.sf-shadow li a{/*margin-left:3px;*/font-size:24px;font-weight:normal;text-decoration:none;margin: 0 0 0 -2px;padding: 0 10px;}
此CSS选择器正在查找<ul> 元素,该元素具有所有三个类(“sf menu”、“sf js enabled”;,and "E;sf阴影)。如果无法直接编辑菜单,只需将此行更改为:

#top .topmenu ul.sf-menu li a{/*margin-left:3px;*/font-size:24px;font-weight:normal;text-decoration:none;margin: 0 0 0 -2px;padding: 0 10px;}
我通过调试工具对此进行了测试,它确实正确显示了菜单。但是如果您特别打算基于这两个CSS类的存在来限制样式,那么您需要更深入地挖掘。

SO网友:Nicole

首先是一句忠告。。。切勿使用图像进行分离。最好使用css边框属性。

埃曼是对的,这与wordpress本身无关,而是与主题的样式有关。

您需要将其添加到样式表中:

#top .topmenu ul.sf-menu.sf-js-enabled.sf-shadow li a {
 font-size: 24px;
 font-weight: normal;
 text-decoration: none;
 margin: 0 0 0 -2px;
 padding: 0 10px;
}
然后将其应用于包含打开ul标签的类:

sf-menu sf-js-enabled sf-shadow
它将如下所示:

<ul class="sf-menu sf-js-enabled sf-shadow">
和以前一样,不要使用图像作为li标记的分隔符,而是使用css border属性。加载时保存。

因此,与此相反:

.topmenu ul li {
 background: url("images/menu_sep.jpg") no-repeat scroll right 8px transparent;
}
改为执行以下操作:

.topmenu ul li {
 border-right: thin solid #999;
}
这应该可以解决主题的问题。

结束