我不知道为什么但是我很难解释这个如此抱歉,如果标题不是我试图说的话。我已经创建了一个不同类型的html / css导航栏,只是为了良好的练习,但我遇到了一个小问题。正如你看到如果你运行下面的代码,当你将鼠标悬停在导航项目上时,背景颜色不合适,我希望它像下面的图像一样伸展,但是它很重要,它重叠!感谢您的帮助!继承人的代码和形象!
*{margin:0; padding:0;}
body{
background:black;
/*background-image:url(../res/back.jpg);*/
background-size:cover;
}
header{
width:200px;
height:600px;
background-color:rgba(255, 255, 255, 0.5);
border:4px solid white;
border-radius:7px;
margin:10px 0px 0px 360px;
}
header h1{
font-family:Impact;
font-size:30px;
color:white;
font-weight:900;
text-align:center;
margin-top:75px;
}
header nav{
}
header nav ul{
}
header nav ul li{
list-style:none;
text-align: center;
margin-top:25px;
position:relative;
top:60px;
}
header nav ul li a{
font-family:Impact;
font-size:25px;
text-decoration: none;
color:white;
font-weight:900;
text-align:center;
}
header nav ul li a:hover{
background:#ADABAB;
color:black;
padding:5px 70px 5px 70px;
}

<html>
<head>
<meta charset="UTF-8">
<title>Home</title>
<link rel="stylesheet" type="text/css" href="style/style.css">
<script type="text/javascript" src="script/jquery.js"></script>
<script type="text/javascript" src="script/script.js"></script>
</head>
<body>
<header>
<h1>WELCOME</h1>
<nav>
<ul>
<li><a href="#">HOME</a></li>
<li><a href="#">GALLERY</a></li>
<li><a href="#">ABOUT</a></li>
<li><a href="#">PRODUCTS</a></li>
<li><a href="#">CONTACT</a></li>
<li><a href="#">DONATE</a></li>
</ul>
</nav>
</header>
</body>
</html>
&#13;
答案 0 :(得分:1)
你非常接近。如果这是你想要的,请告诉我。
查看我在css中的评论
*{margin:0; padding:0;}
body{
background:black;
/*background-image:url(../res/back.jpg);*/
background-size:cover;
}
header{
width:200px;
height:600px;
background-color:rgba(255, 255, 255, 0.5);
border:4px solid white;
border-radius:7px;
margin:10px 0px 0px 360px;
}
header h1{
font-family:Impact;
font-size:30px;
color:white;
font-weight:900;
text-align:center;
margin-top:75px;
}
header nav{
}
header nav ul{
}
header nav ul li{
list-style:none;
text-align: center;
margin-top:25px;
position:relative;
top:60px;
/*added padding*/
padding:10px;
}
header nav ul li a{
font-family:Impact;
font-size:25px;
text-decoration: none;
color:white;
font-weight:900;
text-align:center;
}
/*
chaged from: header nav ul li a:hover
to:header nav ul li:hover
also removed the padding on hover
*/
header nav ul li:hover{
background:#ADABAB;
color:black;
}
<html>
<head>
<meta charset="UTF-8">
<title>Home</title>
<link rel="stylesheet" type="text/css" href="style/style.css">
<script type="text/javascript" src="script/jquery.js"></script>
<script type="text/javascript" src="script/script.js"></script>
</head>
<body>
<header>
<h1>WELCOME</h1>
<nav>
<ul>
<li><a href="#">HOME</a></li>
<li><a href="#">GALLERY</a></li>
<li><a href="#">ABOUT</a></li>
<li><a href="#">PRODUCTS</a></li>
<li><a href="#">CONTACT</a></li>
<li><a href="#">DONATE</a></li>
</ul>
</nav>
</header>
</body>
</html>
答案 1 :(得分:0)
JSFiddle:http://jsfiddle.net/hqadcurt/
我在此处所做的是确保<a>
与列表的宽度相同。
header nav ul li a{
font-family:Impact;
font-size:25px;
text-decoration: none;
color:white;
font-weight:900;
text-align:center;
display:inline-block;
max-width:100%;
width:100%;
}
如果你不想在悬停时晃动,只需移除悬停上的填充物。
header nav ul li a:hover{
background:#ADABAB;
color:black;
}
答案 2 :(得分:0)
使用li:hover
代替li a:hover
并删除其上的填充。
* {
margin: 0;
padding: 0;
}
body {
background: black;
/*background-image:url(../res/back.jpg);*/
background-size: cover;
}
header {
width: 200px;
height: 600px;
background-color: rgba(255, 255, 255, 0.5);
border: 4px solid white;
border-radius: 7px;
margin: 10px 0px 0px 360px;
}
header h1 {
font-family: Impact;
font-size: 30px;
color: white;
font-weight: 900;
text-align: center;
margin-top: 75px;
}
header nav {} header nav ul {} header nav ul li {
list-style: none;
text-align: center;
margin-top: 25px;
position: relative;
top: 60px;
}
header nav ul li a {
font-family: Impact;
font-size: 25px;
text-decoration: none;
color: white;
font-weight: 900;
text-align: center;
}
header nav ul li:hover {
background: #ADABAB;
}
header nav ul li:hover a {
color: black;
}
&#13;
<html>
<head>
<meta charset="UTF-8">
<title>Home</title>
<link rel="stylesheet" type="text/css" href="style/style.css">
<script type="text/javascript" src="script/jquery.js"></script>
<script type="text/javascript" src="script/script.js"></script>
</head>
<body>
<header>
<h1>WELCOME</h1>
<nav>
<ul>
<li><a href="#">HOME</a>
</li>
<li><a href="#">GALLERY</a>
</li>
<li><a href="#">ABOUT</a>
</li>
<li><a href="#">PRODUCTS</a>
</li>
<li><a href="#">CONTACT</a>
</li>
<li><a href="#">DONATE</a>
</li>
</ul>
</nav>
</header>
</body>
</html>
&#13;
答案 3 :(得分:0)
*{margin:0; padding:0;}
body{
background:black;
/*background-image:url(../res/back.jpg);*/
background-size:cover;
}
header{
width:200px;
height:600px;
background-color:rgba(255, 255, 255, 0.5);
border:4px solid white;
border-radius:7px;
margin:10px 0px 0px 360px;
}
header h1{
font-family:Impact;
font-size:30px;
color:white;
font-weight:900;
text-align:center;
margin-top:75px;
}
header nav{
}
header nav ul{
}
header nav ul li{
list-style:none;
text-align: center;
margin:15px 0px;
position:relative;
top:60px;
}
header nav ul li a{
font-family:Impact;
font-size:25px;
text-decoration: none;
color:white;
font-weight:900;
display:block;
text-align:center;
padding:5px 0px;
}
header nav ul li a:hover{
background:#ADABAB;
color:black;
}
&#13;
<html>
<head>
<meta charset="UTF-8">
<title>Home</title>
<link rel="stylesheet" type="text/css" href="style/style.css">
<script type="text/javascript" src="script/jquery.js"></script>
<script type="text/javascript" src="script/script.js"></script>
</head>
<body>
<header>
<h1>WELCOME</h1>
<nav>
<ul>
<li><a href="#">HOME</a></li>
<li><a href="#">GALLERY</a></li>
<li><a href="#">ABOUT</a></li>
<li><a href="#">PRODUCTS</a></li>
<li><a href="#">CONTACT</a></li>
<li><a href="#">DONATE</a></li>
</ul>
</nav>
</header>
</body>
</html>
&#13;
刚刚更改了某些地方的边距和填充。你很亲密。
答案 4 :(得分:0)
试试这个:
header nav ul li a{
font-family:Impact;
font-size:25px;
text-decoration: none;
color:white;
font-weight:900;
text-align:center;
padding: 5px 0px;
display: block;
}
header nav ul li a:hover{
background:#ADABAB;
color:black;
}
*{margin:0; padding:0;}
body{
background:black;
/*background-image:url(../res/back.jpg);*/
background-size:cover;
}
header{
width:200px;
height:600px;
background-color:rgba(255, 255, 255, 0.5);
border:4px solid white;
border-radius:7px;
margin:10px 0px 0px 360px;
}
header h1{
font-family:Impact;
font-size:30px;
color:white;
font-weight:900;
text-align:center;
margin-top:75px;
}
header nav{
}
header nav ul{
}
header nav ul li{
list-style:none;
text-align: center;
margin-top:25px;
position:relative;
top:60px;
}
header nav ul li a{
font-family:Impact;
font-size:25px;
text-decoration: none;
color:white;
font-weight:900;
text-align:center;
padding: 5px 0px;
display: block;
}
header nav ul li a:hover{
background:#ADABAB;
color:black;
}
&#13;
<html>
<head>
<meta charset="UTF-8">
<title>Home</title>
<link rel="stylesheet" type="text/css" href="style/style.css">
<script type="text/javascript" src="script/jquery.js"></script>
<script type="text/javascript" src="script/script.js"></script>
</head>
<body>
<header>
<h1>WELCOME</h1>
<nav>
<ul>
<li><a href="#">HOME</a></li>
<li><a href="#">GALLERY</a></li>
<li><a href="#">ABOUT</a></li>
<li><a href="#">PRODUCTS</a></li>
<li><a href="#">CONTACT</a></li>
<li><a href="#">DONATE</a></li>
</ul>
</nav>
</header>
</body>
</html>
&#13;