html - 如何设置边框底部以覆盖文本的宽度而不是整个汉堡菜单?
问题描述
我有一些 CSS 代码,如果将鼠标悬停在或选中,它会在导航菜单链接下显示边框线。问题是在桌面上它看起来不错,你可以在这里看到:
桌面:
问题出在手机上。如果你看下面的图片,边框线一直穿过菜单。如果它只涵盖文本/图标会很好。有谁知道如何使用css解决这个问题?
移动的:
CSS:
#{$wrap} {
clear: both;
}
a.mega-menu-link:hover {
border-bottom: 2px solid #1034a6 !important;
}
.mega-current-menu-item > a.mega-menu-link:hover {
border-bottom: 0 !important;
}
示例 html:
<a class="mega-menu-link" href="..." tabindex="0"><i class="fa fa-home" aria-hidden="true"></i></a>
解决方案
似乎a.mega-menu-link
元素太宽了。因此,我建议您做的是将所有导航链接(即使只有您想要下划线的导航链接)放在<div>
具有所需宽度的较小元素中,然后根据需要设置该边框底部。
推荐阅读
- docker - docker compose 中具有不同 env 文件的多个虚拟主机
- java - Android 10 (Q) ACCESS_BACKGROUND_LOCATION 权限
- button - Material-Button 更改禁用按钮样式
- c++ - 在 c++ 20 中删除了 throw 函数。你现在如何抛出异常?
- python - 如何以与 MATLAB 相同的方式构造 Python 库和路径
- c# - 如何将屏幕 X 和 Y 转换为纬度和经度
- arrays - 如何将if条件循环输出传递给reactjs中的变量
- mysql - MYSQL Workbench 中的动态查询
- javascript - Node.js,Express:在将标头发送到客户端后无法设置标头
- fonts - 乳胶逐字:使用后备字体显示字符?