HTML
两种菜单的HTML代码是不同的,因为到目前为止,你不能把<select>和
代码如下 | 复制代码 |
继续下一步
CSS
默认我们利用display:none隐藏select菜单,这个很好接受。对于屏幕的阅读者,将隐藏的多余的菜单。
代码如下 | 复制代码 |
nav select { display: none; } |
然后利用媒体查询,针对一些特定宽度的突然变化。你可以根据实际情况来设计(标准断点参考)
代码如下 | 复制代码 |
@media (max-width: 960px) { nav ul { display: none; } nav select { display: inline-block; } } |
现在需要维护两个菜单吗?
恩,这是一个需要担心的问题。或许你的菜单是动态创建的并且你不能很好的控制的输出,或许你有技术处理菜单但想确保不会偶然同步出现两个菜单。能找到的一种方式是从一开始就动态创建下拉菜单。利用JQuery,很容易就能实现:
代码如下 | 复制代码 |
// Create the dropdown base $("").appendTo("nav"); // Create default option "Go to..." $("", { "selected": "selected", "value" : "", "text" : "Go to..." }).appendTo("nav select"); // Populate dropdown with menu items $("nav a").each(function() { var el = $(this); $("", { "value" : el.attr("href"), "text" : el.text() }).appendTo("nav select"); }); |
然后确保下拉菜单能够运用
代码如下 | 复制代码 |
$("nav select").change(function() { window.location = $(this).find("option:selected").val(); }); |
下拉菜单是不是有点唐突?
有一点。小屏幕大多数是移动设备,并且他们对JavaScript的支持很友好,因此并不用太担心。
我的博物馆故事 官方安卓版v1.61.2
我的博物馆故事是一款以消除为主题的经营养成类手游,在这里玩家
专业模拟飞行10 手机版v12.2.4
专业模拟飞行10安卓版是一款飞行休闲手游,顶尖的物理飞行引擎
动物起义战斗模拟器二琳同款 最新版v4.1.1
动物起义战斗模拟器是一个非常有趣的模拟类游戏,玩家可以召唤各
迷你世界七周年 安卓手机版v1.43.0
迷你世界7周年是一款由《迷你世界》官方推出的庆祝特别版本,在
劫后公司无限资源版 v1.0.5.1
劫后公司内置菜单版是游戏的破解版本,在该版本中为玩家提供了内