【发布时间】:2015-10-11 04:20:47
【问题描述】:
我能够显示所有嵌套的li's 内联。我不明白为什么About 和Our Team li 元素之间存在差距。我已经尝试将ul 和li 元素的margin 和padding 设置为0。
<div ng-show = "buttonDisplay" id = "buttonDisplayContent">
<ul>
<li><a href = "#"> Home </a></li>
<li class = "subLi"><a href = "#"> About </a></li>
<ul class = "nested">
<li> <a href = "#"> Our Team </a> </li>
<li> <a href = "#"> Our efforts </a> </li>
</ul>
<li class = "nextToNested"><a href = "#"> Blog </a></li>
<li class = "subLi"><a href = "#"> Services </a></li>
<ul class = "nested">
<li> <a href = "#"> Design </a> </li>
<li> <a href = "#"> Web </a> </li>
<li> <a href = "#"> Learn </a> </li>
<li> <a href = "#"> Invent </a> </li>
</ul>
<li class = "nextToNested"><a href = "#"> Portfolio </a></li>
<li><a href = "#"> Contact </a></li>
</ul>
</div>
CSS
#buttonDisplayContent ul {
list-style-type: none;
padding: 0;
}
#buttonDisplayContent ul ul {
list-style-type: none;
padding: 0;
}
#buttonDisplayContent ul a {
text-decoration: none;
color: #000;
font-size: 25px;
font-weight: bold;
}
#buttonDisplayContent ul ul a {
text-decoration: none;
color: lightgray;
font-size: 15px;
font-weight: bold;
}
.subLi {
float: left;
margin: 0;
padding: 0;
list-style-type: none;
}
.nested {
margin-left: 0;
}
.nested li {
display: inline-block;
padding-bottom: 6px;
padding-right: 1%;
padding-left: 1%;
padding-top: 8px;
}
#buttonDisplayContent ul li:hover {
background-color: black;
}
更新
感谢您的所有帮助。我改变了我的HTML 和CSS 如下。 Li 元素仍未按需要对齐。这是一个小提琴:https://jsfiddle.net/qvq87ke1/2/
HTML
<div ng-show = "buttonDisplay" id = "buttonDisplayContent" >
<ul>
<li><a href = "#"> Home </a></li>
<li class = "subLi"><a href = "#">About </a>
<ul class = "nested">
<li> <a href = "#"> Our Team </a> </li>
<li> <a href = "#"> Our efforts </a> </li>
</ul>
</li>
<li class = "nextToNested"><a href = "#"> Blog </a></li>
<li class = "subLi"><a href = "#"> Services </a>
<ul class = "nested">
<li> <a href = "#"> Design </a> </li>
<li> <a href = "#"> Web </a> </li>
<li> <a href = "#"> Learn </a> </li>
<li> <a href = "#"> Invent </a> </li>
</ul>
</li>
<li class = "nextToNested"><a href = "#"> Portfolio </a></li>
<li><a href = "#"> Contact </a></li>
</ul>
</div>
CSS
#buttonDisplayContent {
background-color: #141516;
width: 100%;
margin-top: 9%;
text-align: center;
position: absolute;
opacity: 0.9;
}
#buttonDisplayContent ul {
list-style-type: none;
padding: 0;
}
#buttonDisplayContent ul ul {
list-style-type: none;
padding: 0;
}
#buttonDisplayContent ul a {
text-decoration: none;
color: #fff;
font-size: 50px;
font-weight: bold;
}
#buttonDisplayContent ul ul a {
text-decoration: none;
color: lightgray;
font-size: 40px;
font-weight: bold;
}
.subLi {
float: left;
margin: 0;
padding: 0;
list-style-type: none;
}
.nested {
float: right;
margin-left: 0;
}
.nested li {
display: inline-block;
padding-bottom: 6px;
padding-right: 1%;
padding-left: 1%;
padding-top: 8px;
}
#buttonDisplayContent ul li:hover {
background-color: black;
}
【问题讨论】:
-
另外,我几乎 100% 确定这与 sass 无关。请改为发布您的原版 CSS。
-
@TylerH 我已经编辑了我的问题以解释为什么它不是重复的。
-
很有可能是因为你的HTML无效!
-
我认为,你有错误的 UL > LI > UL 语法,子 ul,应该是父 li 项的一部分