在 CSS 中更改这一行:
ul {text-align: right; width: 100%; background-color: #999; height: 20px; padding-left: 150px;}
对此:
ul {float: right; background-color: #999; height: 20px; padding-left: 150px;}
问题是您的原始代码将宽度设置为 100%。所以它在屏幕上伸展。text-align
不会将内部<li>
元素浮动到右侧。所以实现它的唯一方法是摆脱width: 100%;
并设置一个float: right;
如果您想在页面上显示一个灰色框,则将 包装<ul>
在<div>
具有background-color: #999;
和 的a 中width:100%
。唯一的办法。
这是我为演示而创建的 HTML 文件:
<!DOCTYPE html>
<html lang="en">
<head>
<title></title>
<style type="text/css">
body {font: normal 300 .8em 'Open Sans', sans-serif; overflow-x: hidden;}
ul {float: right; background-color: #999; height: 20px; padding-left: 150px;}
li {float: left;}
ul a {color: white; padding: 0 10px; text-decoration: none;}
ul a:hover {color: #333;}
</style>
</head>
<body>
<ul>
<li><a href="index.html">Home</a></li>
<li><a href="company.html">Company</a></li>
<li><a href="team.html">Management Team</a></li>
<li><a href="contact.html">Contact</a></li>
</ul>
</body>
</html>
编辑:附加测试 HTML 文件以显示<div>
包装器概念。这个对我有用。
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="en">
<head>
<title></title>
<style type="text/css">
body
{
font: normal 300 .8em 'Open Sans', sans-serif;
overflow-x: hidden;
}
div
{
float: left;
width: 100%;
background-color: #999;
}
ul
{
float: right;
background-color: #999;
height: 20px;
padding- left: 150px;
}
li { float: left; }
ul a
{
color: white;
padding: 0 10px;
text-decoration: none;
}
ul a:hover { color: #333; }
</style>
</head>
<body>
<div>
<ul>
<li><a href="index.html">Home</a></li>
<li><a href="company.html">Company</a></li>
<li><a href="team.html">Management Team</a></li>
<li><a href="contact.html">Contact</a></li>
</ul>
</div>
</body>
</html>