当前位置: 首页 > 面试题库 >

内联元素在悬停时变粗时会发生变化

庄浩言
2023-03-14
问题内容

我使用HTML列表和CSS创建了一个水平菜单。除非您将鼠标悬停在链接上,否则一切都会正常进行。可以看到,我为链接创建了一个粗体悬停状态,现在由于粗体大小的差异,菜单链接发生了变化。

我遇到与此SitePoint帖子相同的问题。但是,该职位没有适当的解决方案。我到处都在寻找解决方案,但是找不到。当然,我不能成为唯一尝试这样做的人。

有人有什么想法吗?

PS:我不知道菜单项中文本的宽度,因此我不能仅设置li项的宽度。

.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>

问题答案:

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::before {

    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>

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



 类似资料:
  • 只是尝试在CSS中练习悬停和下拉。在下面的代码中,我希望每当下拉子div(带有Home1文本的绿色div)悬停在上面时,的背景色(红色)应该更改为蓝色。 会很感激你的帮助。 null null

  • 如果孩子在焦点中(已被点击),我怎么能失去父母的悬停状态?我有一个菜单箭头(用OPEN代替了它,以减少代码),它在悬停状态下打开我的菜单和菜单项,当我单击它们时,菜单项就会聚焦。在菜单项点击后,我希望能够失去对我父母的关注,这样菜单就会消失。 如果可能的话,我会尽量避免使用javascript,这是我最好的尝试... 这是我的html null null 编辑 我在一个单页应用程序上使用Angul

  • 问题内容: 应用Webkit过滤器时,我发现堆叠顺序出现了一个奇怪的问题。为什么当我将鼠标悬停在图像上时,堆叠顺序会改变吗? 我宁愿不必使用z-indexing来解决此问题,因为它会破坏其他站点元素。 请原谅荷马,我只需要一张图片。 编辑:如何才能反转效果以阻止隐藏绝对位置div? 这是我的HTML CSS 问题答案: 这是因为除了建立堆栈上下文以外的其他值。 规范中 对此进行了记录(当前处于工作

  • 所以我使用这个代码来显示菜单中的深度3元素(wordpress): 问题是,当我悬停在一个带有子菜单的元素上时,所有带有子菜单的元素都会显示出来。 问题是: 如何只显示一个子菜单,我在我的鼠标悬停的时刻? 很抱歉添加了标记,无法添加“jquery” 编辑: HTML:

  • 我有使用材料UI的卡片组件。卡在悬停状态下变换,卡上也会出现阴影。但是当我把盒子-阴影在变身之前的盒子上出现阴影,并且变身的卡片和阴影之间有空白。我该怎么解决这个? 其他方式的相同输出:

  • 在我的Twitter引导网站,我有一个导航栏。 我为它们添加btn-成功或btn-危险类用于颜色标记。 我这样做是因为当用户更改主题(css)时,按钮会显示在该主题上。 我使用的是。所以背景是黑色的。我将按钮链接的颜色更改为白色。但问题是,当用户将鼠标悬停在按钮上时,按钮变为透明,颜色无法读取。 所以我需要导航栏按钮是可见的,即使用户在上面悬停。我希望悬停与否时按钮颜色相同。 我的小提琴:http