我在屏幕的底部导航栏中有一个YUI菜单,在其下方创建一个大的空白区域,如果可见,将呈现动作列表......
在第一次单击时,菜单将在该空白区域中呈现,这需要用户滚动查看...在第二次单击时,它将向上绘制(理想情况下),以便用户无需滚动查看菜单......第二次点击也会杀死那块白色空间...
我发现添加了一种显示风格:没有div杀死白色空间......但是YUI没有将显示设置为阻止,这从我理解它应该...所以我写了另一种方法会手动做到这一点......但是同样的行为发生,菜单首先呈现在折叠下方,要求用户滚动....第二次它的工作正常...某些原因上/左位置没有正确计算第一次点击,我似乎无法弄清楚为什么
答案 0 :(得分:1)
好的,所以我通过简单地将一个样式添加到包含具有以下属性的菜单的div来修复它。
position: absolute;
left:0px;
top:0px;
这样它将在屏幕的左上角绘制div,其中总是有内容,因此不会创建空格。正在创建空白,因为YUI使用visibility:hidden而不是display:none
答案 1 :(得分:0)
您是否尝试将constraintoviewport
属性用于菜单的配置选项(在YUI.widget.Menu
搜索):
(继承自YAHOO.widget.Overlay。)布尔值,指示菜单是否会尝试保持在视口大小的边界内。仅当“position”配置属性设置为dynamic并且自动应用于所有子菜单时,才应用此属性。
如果您使用的是YUI.widget.Button
,我相信您可以获得该对象的Overlay
属性的引用,并将constraintoviewport
设置为true
。