为了账号安全,请及时绑定邮箱和手机立即绑定

内嵌元素在悬停时移动

内嵌元素在悬停时移动

牧羊人nacy 2019-07-26 13:14:13
内嵌元素在悬停时移动我使用HTML列表和CSS创建了一个水平菜单。所有的工作,它应该,除了当你悬停在链接上。您看,我为链接创建了一个粗体悬停状态,现在由于粗体大小的差异,菜单链接发生了变化。我遇到了同样的问题这个SitePoint哨所..但是,该员额没有适当的解决办法。我到处寻找解决办法却找不到。当然,我不可能是唯一一个尝试这样做的人。有人有什么想法吗?答:我不知道菜单项中文字的宽度,所以我不能直接设置李项的宽度。.nav { margin: 0; padding: 0; }.nav li {      list-style: none;      display: inline;      border-left: #ffffff 1px solid; }.nav li a:link, .nav li a:visited {      text-decoration: none;      color: #000;      margin-left: 8px;      margin-right: 5px; }.nav li a:hover{      text-decoration: none;      font-weight: bold; }.nav li.first { border: none; }<ul class="nav">     <li class="first"><a href="#">item 0</a></li>     <li><a href="#">item 1</a></li>     <li><a href="#">item 2</a></li>     <li><a href="#">item 3</a></li>     <li><a href="#">item 4</a></li></ul>
查看完整描述

3 回答

?
缥缈止盈

TA贡献2041条经验 获得超4个赞

li {
    display: inline-block;
    font-size: 0;}li a {
    display:inline-block;
    text-align:center;
    font: normal 16px Arial;
    text-transform: uppercase;}a:hover {
    font-weight:bold;}a::after {
    display: block;
    content: attr(title);
    font-weight: bold;
    height: 0;
    overflow: hidden;
    visibility: hidden;}
<ul>
    <li><a href="#" title="height">height</a></li>
    <li><a href="#" title="icon">icon</a></li>
    <li><a href="#" title="left">left</a></li>
    <li><a href="#" title="letter-spacing">letter-spacing</a></li>
    <li><a href="#" title="line-height">line-height</a></li></ul>

检查上的工作示例..这个想法是为粗体(或任何)预留空间。:hover(状态样式):after元素,并使用title标记作为内容的源。



查看完整回答
反对 回复 2019-07-27
?
陪伴而非守候

TA贡献1757条经验 获得超8个赞

如果不能设置宽度,那就意味着宽度将随着文本的粗体而改变。除了通过修改每个状态的填充/边距等折衷措施之外,没有办法避免这种情况。



查看完整回答
反对 回复 2019-07-27
  • 3 回答
  • 0 关注
  • 271 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信