【发布时间】:2017-08-23 03:44:49
【问题描述】:
我今天尝试了书中的每一个 CSS 技巧,让我的父导航标签home-main-nav-menu 根据它的孩子和孙子调整大小,但我一辈子都无法让它工作。如果有人可以提供并解释如何解决这个问题,那就太好了,并且解释为什么元素不能自然地扩展以适应它的子内容会更好。谢谢! [参考图片和css]
$(document).ready(function(){
$('.main-ul').children('li').on('click', function() {
$(this).children('ul').slideToggle('slow');
});
});
.home-main-nav-menu{
border-style: double;
border-color: cyan;
}
.A{
display: inline-block;
text-align: center;
padding-left: 5px;
margin-right: 10px;
border-style: double;
border-color: purple;
}
.B{
list-style-type: none;
text-align: left;
margin-left: -40.5px;
}
.A > ul {
display: none;
}
.main-ul{
border-style: double;
border-color: green;
width: 95.5%;
margin-left: -3px;
}
ul{
text-align: center;
position: absolute;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<nav class = "home-main-nav-menu">
<ul class = "main-ul">
<li class = "A"><a href = "#/">a</a></li>
<li class = "A"><a href = "#/">b</a>
<ul>
<li class = "B"><a href = "#/">c</a></li>
<li class = "B"><a href = "#/">d</a></li>
</ul>
</li>
<li class = "A"><a href = "#/">e</a></li>
<li class = "A"><a href = "#/">f</a>
<ul>
<li class = "B"><a href = "#/">f</a></li>
<li class = "B"><a href = "#/">g</a></li>
</ul>
</li>
<li class = "A"><a href = "#/">h</a>
<ul>
<li class = "B"><a href = "#/">i</a></li>
<li class = "B"><a href = "#/">j</a></li>
</ul>
</li>
<li class = "A"><a href = "#/">k</a>
<ul>
<li class = "B"><a href = "#/">l</a></li>
<li class = "B"><a href = "#/">m</a></li>
</ul>
</li>
</ul>
</nav>
【问题讨论】:
标签: javascript html css