HTML下拉菜单怎么设计?用户友好的5种select方案

嗯...设计一个人性化的HTML下拉菜单...确实非常重要...尤其现在这么多人在用...
先说一下改进的搜索...想想吧...比如2 02 2 年...我在上海做一个项目...选项列表...动不动就有5 0多个...用户想找什么...最好向下滑动一个...添加一个搜索框...就像Select2 ...我试过了...效果很好...实时过滤...用户输入几个字就立刻过滤掉...不用等...TomSelect也不错...轻量...有时候项目要求不高...就用这个...
然后还有分组和级别...比如亚洲按洲分组...欧洲可以看到一组...扫一眼...不用挖进去找...但是要小心...不要太深入...比如省-市-区...然后用户要长按...我后来才意识到...可能是我有偏见...我觉得三层就够了...不管多深...可以用jsTree
worn...但是有点复杂...但是有点复杂...下拉菜单...这个很重要...因为不同的网站...有不同的风格...如果原来的选择看起来像...与整个页面不匹配...需要更改...被CSS覆盖了...比如壁纸...箭头...等等...不过要小心...有些浏览器...需要加前缀...-webkit-ah... -moz-ah-iv... -moz-ah-iv...选择...通过JS控制...这个...当时很迷茫...后来慢慢想通了...我就得自己写JS了...控制屏幕隐藏...点击选择...什么的...
虚拟滚动...这个...想想看...如果太多的话选项...像数千个...所以使用它使用的原生...固定滚动...所以现在我们被卡住了...滚动...它只渲染可见区域...滚动时加载...性能好多了...react-window, vue-virtual-scroller...这些库都是...易于使用...
键盘和可访问性...这个...也必须考虑...用户不能只使用鼠标使用...向下键...确认...Esc关闭...所有这些都必须是存在...否则...某些用户无法使用它...您需要添加 aria-label...aria-描述...那些标签...以便屏幕阅读器可以阅读...我用 axeDevTools 检查...有些地方没有添加。
..一定要加...
总之...选择...应该根据情况...如果选项少...就用默认...如果选项多...必须加搜索或者虚拟滚动...手机版...必须特别注意...屏幕大...选项必须足够高...4 8 px以上...否则无法反馈...如果你觉得有卡可以点击...仔细...
就这样了...

HTML代码怎么实现下拉菜单_HTML代码下拉菜单设计与交互实现方法

嘿兄弟,我记得那年我在公司做一个项目,下拉菜单困扰了我几天。
起初我使用纯HTML和CSS来保持简单,但结果是页面布局总是出现问题,定位总是错误。
后来加上了JavaScript,这次运行得很好。
它可以点击和切换,但一旦鼠标移开就会关闭,这使得用户体验几乎无聊。

当时我就在想,为什么这个东西不能像手机上的下拉菜单那样关闭呢?所以我开始修补 JavaScript。
我记得写了一个方法来监听整个窗口的点击事件,然后判断点击的是不是下拉按钮。
如果没有,请关闭菜单。
这个技巧效果很好,用户体验也好很多。

接下来,我想到了给菜单添加一个样式,让它看起来不那么单调。
仅仅使用CSS阴影和背景色,感觉就高级多了。
后来为了优化SEO,我还特意将结构改为语义标签,并添加了ARIA属性,只是为了让搜索引擎更好地抓取信息。

定制移动端也花了很多功夫。
我记得当时我还研究了touchstart事件,因为hover不能直接在移动端使用。
当时我也尝试过fastclick.js,效果不错,点击响应速度有所提高。

最后,为了处理复杂的结构,我还插入了一些 ,并使用JavaScript来递归控制显示和隐藏。
这一次,我不怕有更多的菜单级别。

总之,创建下拉菜单是一项考验耐心和细节的任务,但一旦完成,成就感也是很棒的。
哈哈,现在回想起来,那段时间我遇到了很多坑,但也学到了很多。

如何编辑网页HTML中的下拉菜单_如何编辑网页HTML中下拉菜单的实现方法

说实话,在前端工作时,下拉菜单确实让人又爱又恨。
仔细想想,一个简单的选择可以有多种方式来完成,每种方式都有各自的适用场景。

例如,当我在做一个电子商务网站时,我肯定是直接使用Bootstrap作为主页导航栏中的下拉菜单。
为什么?因为当时项目时间比较紧,而产品经理每天都在推“前沿”的交互效果。
提供一个CDN链接,设置一个现成的类,几行代码搞定,响应式效果就会自动匹配。
说实话,在这种场景下,如果你坚持使用div+CSS,你可能要工作很长时间,并且可能无法像Bootstrap那样顺利修改。

但有趣的是,我在做后台管理系统的时候,发现HTML+CSS静态下拉菜单更加方便。
当时系统的界面要求简单,不要包含大量的动画效果。
我使用 div 来包裹下拉菜单内容。
当您向上移动鼠标时它会显示,当您将鼠标移开时它会消失。
代码量小,性能好。
当时我不明白为什么后端系统的用户更喜欢这种“传统”的下拉方式。

后来,我收到了一个表单项,并且必须选择一组选项来提交它。
这时候就不得不使用<select>和 </选择>
要获取选定的值,您可以使用 JavaScript 侦听更改事件,然后获取值或选项的文本。
我写了一个简单的例子:
javascript const select = document.getElementById('城市选择'); select.addEventListener('更改', function() { const 值 = this.value; const text = this.options[this.selectedIndex].text; console.log(所选值:${value},文本:${text}); });
还有一个自定义导航下拉菜单,需要使用 CSS 和 JavaScript。
我的一个朋友用这个方法创建了一个产品菜单,看起来相当高级。
HTML结构是这样的: