gpt4 book ai didi

html - 悬停背景显示不正确?

转载 作者:行者123 更新时间:2023-11-28 01:45:54 26 4
gpt4 key购买 nike

我想实现这个: enter image description here

这是我取得的成就:LINK

当您将鼠标悬停在导航链接上时,底部会出现一个带有蓝色边框的白色背景。它看起来不对。为什么会这样?

标记:

<header>
<div>
<h1>CertsPlan</h1>
<section>
<ul>
<li><a href="javascript:void(0)">+ All Vendors</a></li>
<li>
<article id="header-cart">
<img src="img/cart-icon.png" alt="Cart Icon"> 000
</article>
</li>
<li>
<article id="header-search">
<form action="#">
<input type="text" name="search" value="Exam Code">
</form>
</article>
</li>
<li><a href="javascript:void(0)">Sign In/Register</a></li>
</ul>
</section>
<nav>
<ul>
<li><a href="index.html"><img src="img/home.png" alt="Home Icon"></a></li>
<li><a href="javascript:void(0)">Bundle</a></li>
<li><a href="javascript:void(0)">Faqs</a></li>
<li><a href="javascript:void(0)">Contact Us</a></li>
</ul>
</nav>
</div>
</header>

CSS:

/* Global Styles */
body {
border-top: 2px solid #ffffff;
background: #ffffff;
font-family: 'Arial', sans-serif;
color: #57616a;
}

p {
margin: 5px 0;
line-height: 25px;
}

strong {
font-weight: bold;
}

/* Section Styles */

/* Header */
header {
width:auto;
margin: 2 auto 0 auto;
background-color: #f7f7f7;
border-bottom: solid 5px #dedede;
}

header div {
width:auto;
max-width:1040px;
margin: auto;
overflow: hidden;
}

header h1 {
font-size: 30px;
font-weight: 400;
color: #2a323a;
font-family: 'PT Sans', sans-serif;
vertical-align: middle;
margin-top: 30px;
margin-bottom: 25px;
float:left;
}


/* Navigation */
nav {
float:right;
margin:none;
}

header ul {
list-style:none;
margin: 0;
overflow: hidden;
}

nav ul li {
display: block;
float: left;
margin-top: 38px;
margin-bottom: 35px;
}

nav ul li a {
font-family: 'PT Sans', sans-serif;
text-transform: uppercase;
font-size: 14px;
font-weight: 400;
color: #2a323a;
padding: 38px 20px 35px 20px;
text-decoration:none;
}

nav ul li a:hover {
background-color: #ffffff;
border-bottom: solid 5px #00acdd;
}

ul li a:active {
background-color: #ffffff;
border-bottom: solid 5px #00acdd !important;
}

/* Header top right area */

header section {
float:right;
}

header section li {
display:block;
float:right;
margin: 37px 0px 28px 7px;
}

header section a {
padding: 10px;
background: #31bbe2;
font-family: 'PT Sans', sans-serif;
font-size: 12px;
font-weight: 400;
color: #ffffff;
text-decoration:none;
border-radius: 5px;
}

最佳答案

您在两个父元素上有 overflow: hidden,它隐藏了边界之间的所有内容:(图像上的蓝色)
enter image description here
a 标签上的蓝色边框超出了父级的边框。

解决方法:

  1. 应该从 header div 中删除 overflow: hidden,并添加 min-height: 89px
  2. 也从 header ul 中删除 overflow: hidden
  3. nav ul li a 中将 padding 更改为:38px 20px 33px

就这些。

编辑:

如果你想让它即使在你调整浏览器大小时也能正常工作,而不是在 nav 之后添加一个 div 就像这样:

<nav>
[...]
</nav>
<div class="clear"></div>

clear div 的样式:

.clear {
clear: both;
display: table;
}

关于html - 悬停背景显示不正确?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22710926/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com