0

我正在尝试创建一个限制为一行的响应式菜单。当屏幕宽度变小时,任何不完全适合该行的菜单项都需要放入固定在菜单右侧的“更多”菜单项中。我通常只使用 CSS 媒体查询来执行此操作,但鉴于菜单项的数量是动态的,因此很难使用媒体查询。

我最初的想法是动态地为它们分配一个类,这样分配的类将不显示任何内容,并且当按下“更多”按钮时,它将显示隐藏的元素。

到目前为止,我已经做到了这一点:

      var parentWidth = $('nav').width();

      var childrenWidth=0;
        $('.menu-bar li').each( function(){ cWidth += $(this).width(); });

      while (childrenWidth > parentWidth) {               

            $($(".menu-bar li").get().reverse()).each(function() { 
                $(this).addClass('hidden-item');
             });                  
      };

这显然不起作用,任何帮助将不胜感激。

如果有人知道一个很棒的 CSS 方法来做到这一点,我很想听听,我一直在绞尽脑汁想弄清楚。

谢谢

4

0 回答 0