Как сделать Бутстрап аккордеон свернуть при нажатии на заголовок div?
в загрузочном аккордеоне, вместо того, чтобы требовать щелчка по a текст, я хочу, чтобы он свернулся при нажатии в любом месте panel-heading div.
Я использую Bootstrap 3. Так что вместо аккордеона это просто складная панель. Есть идеи, как сделать всю панель кликабельной?
5 ответов:
все, что вам нужно сделать, это использовать...
data-toggle="collapse"data-target="#ElementToExpandOnClick"...на элементе, который вы хотите нажать, чтобы вызвать эффект свернуть/развернуть.
элемент
data-toggle="collapse"будет элемент, чтобы вызвать эффект. Элементdata-targetатрибут указывает элемент, который будет расширяться при срабатывании эффекта.дополнительно вы можете установить
data-parentесли вы хотите создать эффект гармошки независимых складных, например:
data-parent="#accordion"Я бы также добавил следующий CSS к элементам с
data-toggle="collapse"если они не<a>теги, например:вот!--30-->a jsfiddle с измененным html из Bootstrap 3 documentation..panel-heading { cursor: pointer; }
другой способ сделать ваш
<a>заполнить все пространствоpanel-heading. Используйте этот стиль для этого:.panel-title a { display: block; padding: 10px 15px; margin: -10px -15px; }проверьте эту демонстрацию (http://jsfiddle.net/KbQyx/).
затем, когда вы нажимаете на заголовок, вы на самом деле нажимаете на
<a>.
я заметил несколько незначительных недостатков в JSFiddle грима.
чтобы заставить указатель перейти на руку для всей панели используйте:
.panel-heading { cursor: pointer; }я убрал
<a>тег (проблема стиля) и хранилdata-toggle="collapse" data-parent="#accordion" data-target="#collapse..."onpanel-headingна протяжении.я добавил метод CSS для отображения chevron, используя
font-awesome.cssв моем jsfiddle:
простым решением было бы удалить прокладку из
.panel-headingи добавить к.panel-title a..panel-heading { padding: 0; } .panel-title a { display: block; padding: 10px 15px; }Это решение аналогично приведенному выше, опубликованному calfzhou, несколько иной.
на самом деле моя группа этой свернуть значок стрелки состояния, и я попробовал другие ответы в этом сообщении , но позиция значка изменилась, так что вот решение со значком стрелки состояния коллапса.
добавить этот пользовательский CSS
.panel-heading { cursor: pointer; padding: 0; } a.accordion-toggle { display: block; padding: 10px 15px; }кредит идет к этой после ответа.
надеюсь поможет.
Comments