【发布时间】:2012-07-24 20:26:45
【问题描述】:
我一直在尝试更改我的 CSS 中的所有属性,以解决我当前的导航栏按钮问题,但没有成功。
当鼠标悬停在上面时,按钮超出了导航栏背景的高度,这是不应该的。
http://www.mohrdevelopment.com
我的 HTML:
<ul class="navigation">
<li class="current"><a href="index.html"><em class="home"/>Home</b></a></li>
<li><a href="second.html"><em class="photos"/><b>Photos</b></a></li>
<li><a href="projects.html"><em class="projects"/><b>Projects</b></a></li>
<li><a href="about.html"><em class="about"/><b>About</b></a></li>
<li><a href="contact.html"><em class="contact"/><b>Contact</b></a></li>
</ul>
我的 CSS:
body {
font-family:sans-serif;
background: url(images/background3.png);
}
.navigation {
background:#1841c8 url(Navigation/Navigation/nav_background.png);
height:40px;
margin-bottom:0px;
font-size: 0; /*remove whitespace*/
display:block;
min-width:625px;
}
.navigation li{
display:inline-block;
line-height: 40px;
font-size:16px;
}
.navigation li a{
display:block;
color:#FFFFFF;
padding: 11px 5px 15px;
}
.navigation li a em{
height:32px;
display:inline-block;
padding: 0 5px 6px 50px;
font-weight:bold;
vertical-align: middle;
background-position: 0 50%;
font-size:16px;
}
.navigation li a:hover{
color:#00CCFF;
background: url(Navigation/Navigation/nav_hover.png);
text-decoration:none;
padding: 11px 5px 10px;
}
.navigation .current a {
color:#FFFFFF;
background:url(Navigation/Navigation/nav_hover.png);
padding-bottom:11px;
}
/*Navigation bar icons*/
.navigation li a em.home {
background-image: url(Navigation/Icon_images/home.png);
background-repeat: no-repeat;
}
.navigation li a em.photos{
background-image: url(Navigation/Icon_images/Photo.png);
background-repeat: no-repeat;
}
.navigation li a em.projects{
background-image: url(Navigation/Icon_images/projects.png);
background-repeat: no-repeat;
}
.navigation li a em.about{
background-image: url(Navigation/Icon_images/about.png);
background-repeat: no-repeat;
}
.navigation li a em.contact{
background-image: url(Navigation/Icon_images/Contact.png);
background-repeat: no-repeat;
}
a {
Color:blue;
Text-decoration:none;
}
h1 {
background: url(images/Header.png);
text-indent:-9999px;
width:1092px;
height:132px;
margin:auto;
}
.content, aside {
height:600px;
}
.wrap {
margin:auto;
width:80%;
background:yellow;
}
.content {
background:teal;
float:left;
width:80%;
height:auto;
min-width:500px;
display:inline;
}
aside {
background:lightblue;
float:left;
width:20%;
min-width:125px;
display:inline;
}
aside ul {
padding-left:1px;
list-style:none;
}
ul a {
text-decoration:none;
color: #666;
}
ul a:hover {
text-decoration:underline;
color:black;
}
.sidebarli {
}
li {
list-style:none;
margin-bottom:20px;}
label {
display: block;
cursor: pointer;
color: #292929;
font-family:sans-serif;
padding-bottom:8px;
}
form ul {padding-left:0px;
}
textarea {
width:400px;
height:220px;
}
【问题讨论】:
-
你的整个 HTML 结构非常奇怪 - 你使用的是 em 元素而不是 div(看起来),你在菜单中将 li 和 em 元素嵌套在彼此内部等等等等。我没有并不是说听起来像个笨蛋,但我认为在进行更高级的项目之前,您需要正确学习基本的 HTML。
-
我应该在
- 内部使用 div 吗?
-
- 应该只在最顶层包含
- ,如果需要,那些
- 可以包含 标签。你也应该,绝对,绝对,不要像你一样使用 标签。 用于强调文本,而不是分割内容。就像我说的 - 在尝试构建这样的页面之前,您真的应该学习 HTML 并正确学习它。
-
我知道我应该学习 HTML。但我正在使用来自各个站点的视频教程,tutsplus 是我最喜欢的一个。但这些视频只涵盖了 html 编码直到某一点。我一直在努力寻找更高级的教程。
-
你应该考虑读一本书,你可以按照自己的节奏阅读,适当地测试一些东西,然后在需要时再回去。 W3Schools - w3schools.com/html 是一个很棒的(文本)资源。此外,我所说的绝不是“高级”——使用进行内容分割是您学习的第一件事。永远不要复制你不理解的代码,从头开始构建东西并确保你了解你在做什么,而不仅仅是确保它以某种方式工作。
标签: css button navigation padding