我在一边有一个按钮的web应用程序。当我点击其中一个按钮时,* JavaScript magic *,它旁边会出现一个菜单。脚本对定位或样式一无所知,它只是找到一个目标元素,然后在其中写入HTML。用页面底部的距离限制高度
总之,我有一个相对于其父母的位置(本例中为#pretty-target
)。
<div class="container">
<button class="my-pretty-button">@</button>
<div class="menu-target" id="pretty-target"></div>
</div>
结果看起来是这样的:
现在,当我减少页面的高度,我想限制这种菜单的高度,取决于其距离底部这一页。更非理想的结果应该是这样的:
我知道最好的做法是有一个滚动的页面主体,不操心这些元素的高度。不过,我的页面主体是一张地图,所以任何尝试滚动它都会移动地图。
我当然可以通过使用滚动覆盖制作一些替代的东西,或者甚至更好,通过使用媒体查询来选择更好的方法来显示这些菜单。但是,它们不会以这种方式显示。
简而言之:我有一个与页面无关的div,我希望它的高度受页面高度的限制。这如何工作(不使用JS)?
好吧,这将在页面顶部的菜单操作,但如果有些是在中间呢? – GnxR
@GnxR该解决方案非常灵活,无论放置在何处都应该可以工作。它只是依靠你知道它放置的顶部有多少个像素。要降低它,请更改该值。如果你不知道,或者不想硬编码,你可以使用'max-height:60vh;'或类似的方法,但是在不同的浏览器高度下这将不太一致。 – fredrivett