Superfish是一个非常常见的菜单插件,所以我很惊讶我很难纠正这一点。
我有一个相当紧凑的菜单结构,包括几个子菜单。如此之多,以至于当它们的父级悬停时,它们中的许多会从页面上掉下来或从浏览器视图中消失。
人们建议在superfish.css文件中应用right: 0px;属性来代替left: 0px;属性,但是看起来JS脚本正在将它自己的superfish.css属性作为内联样式写入元素。实际上,它看起来像是在测量父菜单的宽度,以便应用正确的left:值。
子菜单的结果如下所示
<ul class="sub-menu" style="left: 16.18181818181818em;
float: none; width: 14.5em; display: block; visibility: visible;">所以,我想我要说的是...如果不是CSS文件,该如何应用这些CSS属性?即使当我为菜单应用一个特定的类时,我想“下拉”到右边而不是左边,这个属性无论如何都会被重写。
有没有办法纠正这一点,或者只要我到了第二级下拉列表(当下拉列表开始向左移动而不是向下移动时),它们就会向右移动?
发布于 2013-06-22 03:54:48
我也在处理同样的问题。看起来这个“特性”已经从路线图中消失了:)
不管怎么说,我找到了这个Superfish Menu text off-screen
它为我解决了这个问题,但YMMV一如既往。
发布于 2013-06-21 08:55:07
如果CSS来自Javascript,
然后,您可以在样式表中使用!important来覆盖它。
在样式表中的规则旁边添加注释,这样人们就可以记住或理解left:0!important;/* !important is here to overide style from js' suckerfish menu */的用法:)
发布于 2016-02-10 20:02:22
我这样做就解决了这个问题...
jQuery超级菜单插件- v1.7.4
只需打开Superfish.js并找到对display的visibility更改
示例:
visibility: hidden到display : none
visibility: visible到display : block
superfish js编辑文件

https://stackoverflow.com/questions/17226003
复制相似问题