css - 如何摆脱包装锚标签中的垂直悬停间隙?
问题描述
当我将鼠标悬停在锚标记上时,它会闪烁。这是因为包裹的锚标记的行之间存在垂直间隙。此外,如果我碰巧在两行之间单击,则链接不会激活。我想摆脱导致它的这种闪烁和垂直悬停间隙。布局的其余部分,包括明显的行高和按钮位置(与锚标记的最后一个单词在同一行)应该保持不变。
我考虑了几天,但没有运气。我最好的选择是在锚标记上使用 inline-block ,但这会将按钮清除到下一行,这会浪费太多空间。
body {
line-height: 1.5;
width: 300px;
}
a {
text-decoration: none;
}
a:hover {
text-decoration: underline;
}
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
<p>
<a href="#">Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
</a>
<button>click</button>
</p>
<p>Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
解决方案
添加:
a {
padding: 4px 0;
}
它会给a
元素一个额外的空间top
and bottom
,它不会影响gaps
.
body {
line-height: 1.5;
width: 300px;
}
a {
text-decoration: none;
padding: 4px 0;
}
a:hover {
text-decoration: underline;
}
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
<p>
<a href="#">Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
</a>
<button>click</button>
</p>
<p>Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
推荐阅读
- css - 整合 CSS 规则/继承
- apache - 如何使用查询字符串中的文件名重定向目录中的所有文件?
- linux - kafka中的日志刷新率究竟是什么意思?
- flutter - TextFormField 不反映来自 ChangeNotifierProvider 的 initialValue
- c++ - 使用 C++ 宏封装 SQLITE 错误检查和报告
- html - 使用 R 抓取网站的 Power BI 仪表板
- kotlin - Kotlin 等效于 C# 8 的异步枚举是什么?
- r - 向量中带有 () 的 substring()
- r-markdown - Rmarkdown 中的 Xaringan:如何删除标题中的 auto_identifiers
- node.js - 发布期间的 npm 错误 - babel-eslint 的版本不正确