【问题标题】:Bootstrap 3 accordion chevron issueBootstrap 3 手风琴雪佛龙问题
【发布时间】:2014-08-05 18:53:10
【问题描述】:

我做了与“WeaverSnap”在回复this question 时所说的相同的事情。

我的手风琴就像他发布的JSFiddle

问题是,V 形图标以错误的状态开始,但在其中一个面板被切换后会自行修复。

这是一个小问题,但我认为它可以解决。

这是他提供的 CSS:(顺便说一句,我将“FontAwesome”更改为“Glyphicons Halflings”)

/* CSS Method for adding Font Awesome Chevron Icons */
 .accordion-toggle:after {
    /* symbol for "opening" panels */
    font-family:'FontAwesome';
    content:"\f077";
    float: right;
    color: inherit;
}
.panel-heading.collapsed .accordion-toggle:after {
    /* symbol for "collapsed" panels */
    content:"\f078";
}

【问题讨论】:

    标签: css twitter-bootstrap-3


    【解决方案1】:

    好吧...如果您不反对,您可以将.collapsed 类添加到每个.panel-heading 元素中。所以他们每个看起来都像这样:

    <div class="panel-heading collapsed" data-toggle="collapse" data-parent="#accordion" data-target="#collapseOne">
        <!-- Child elements -->
    </div>
    

    这个类决定了 V 形的朝向。您不必直接在 HTML 中执行此操作;您可以在页面加载时使用 jQuery 以编程方式执行此操作,因为您已经加载了该页面:

    $(document).ready(function(){
        $(".panel-heading").addClass("collapsed");
    });
    

    这里有一个 JSFiddle 演示了这个快速修复。

    希望这会有所帮助!如果您有任何问题,请告诉我。

    【讨论】:

    • 它就像一个魅力,还解决了我遇到的另一个问题,非常感谢!
    • 太棒了!很高兴我能帮忙。
    • 这很好用,谢谢。虽然,这是一个非常不优雅的解决方案,因为 - 为了使图标与加载状态一致 - 我们必须同时使用 两个 类:添加“折叠”面板标题而不是在面板主体中添加“in”有一个关闭的面板,或者不将“折叠”添加到面板标题并将“插入”添加到面板主体以打开面板......使用 Angular,我必须为此编写一个指令......任何解决方案更多适合 Angular,有人吗?
    • @MarcoS 嘿,抱歉,我在这里的回答不足以适用于您的情况 - 不幸的是,发表评论可能无法让您获得足够的可见性来获得最佳解决方案。我建议发布一个新问题,并在解释您尝试过的内容以及为什么它没有为您解决问题时链接回这个答案。
    • 它确实有效,我只是说它以代码清洁为代价...我不认为需要一个新问题:它应该是相同的 1:1... 需要什么是一个“更好”的答案... :-)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-08
    • 1970-01-01
    • 1970-01-01
    • 2013-08-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多