如何修复列表,以便在图标更新之前不必切换两次?

时间:2016-05-10 17:20:25

标签: html css twitter-bootstrap-3 html-lists

基本上发生的事情是当我加载页面然后放下我的外部可折叠菜单(.admin)或嵌套的可折叠菜单(.unitsofstudy)时,它不会更新我拥有的glyphicon使用:after选择器进行设置,除非我将其切换两次。

是否有人能够看一看,看看他们是否能找到我搞砸了的地方;我现在已经在这几个小时试图修复但没有成功。如果需要更多信息,请告诉我。

HTML:

<div id="sidebar-collapse" class="col-sm-3 col-lg-2 sidebar">
    <ul class="nav menu" id="navmenu-sidebar">
        <!-- Admin dropdown -->
        <li>
            <a class="admin" data-toggle="collapse" href="#admin"><i class="fa fa-tasks" style="margin-right: 16px;"></i>Admin</a>
            <ul id="admin" class="nav collapse">
                <li>
                    <a class="unitsofstudy" data-toggle="collapse" href="#unitsofstudy"> &nbsp; &nbsp;<i class="fa fa-book" style="margin-right: 12px;"></i>Units of Study</a>
                    <ul id="unitsofstudy" class="nav collapse">
                        <li>
                            <a href="@Url.Content("~/Admin/Units")"> &nbsp; &nbsp; &nbsp; &nbsp;<i class="fa fa-book" style="margin-right: 8px;"></i> View Units</a>
                        </li>
                        <li>
                            <a href="@Url.Content("~/Admin/NewOfferedUnit")"> &nbsp; &nbsp; &nbsp; &nbsp;<i class="fa fa-plus" style="margin-right: 10px;"></i> Create Unit Offerings</a>
                        </li>
                        <li>
                            <a href="@Url.Content("~/Admin/NewUnit")"> &nbsp; &nbsp; &nbsp; &nbsp;<i class="fa fa-plus" style="margin-right: 10px;"></i> Register Units</a>
                        </li>
                        <li>
                            <a href="@Url.Content("~/Admin/NewSemester")"> &nbsp; &nbsp; &nbsp; &nbsp;<i class="fa fa-plus" style="margin-right: 10px;"></i> Register Semesters</a>
                        </li>
                    </ul>
                </li>
            </ul>
        </li>
    </ul>
</div>

我的CSS:

.admin:after, .unitsofstudy:after {
    font-family: 'Glyphicons Halflings'; 
    content: "\e114";    
    float: right;       
    color: grey;        
}
.admin.collapsed:after, .unitsofstudy.collapsed:after {
    content: "\e080";   
}

1 个答案:

答案 0 :(得分:1)

您需要为您的主持人提供.collapsed

的初始课程
<li>
    <a class="admin collapsed" data-toggle="collapse" href="#admin">
        <i class="fa fa-tasks" style="margin-right: 16px;"></i>Admin
    </a>
</li>

所以请管理员和unitofstudy让bootstrap知道菜单的初始状态已崩溃

工作示例

http://codepen.io/jcoulterdesign/pen/6443069430f54e0b635e726c2cb9da02