2013-07-03 3 views
3

Есть ли какой-либо (довольно простой) способ получить Twitter Bootstrap's navbar, заполненный split button dropdowns?Щебетать навигационной панели Bootstrap с раздельными кнопками

Я ищу какой-либо способ отделить так называемые основные кнопки из выпадающего меню, содержащего элементы, которые принадлежат к этой основной кнопки или каким-то образом связанные с ней.

Я пытался добавить два элемента NavBar в каждых из них - первый, содержащего только основной кнопки (с подписью и значком) и вторым, содержащим только выпадающий список (без заголовка и значка):

enter image description here

enter image description here

Но результат не очень приемлем. Главным образом потому, что:

  • только одна часть (из двух притворяясь одной кнопкой) наведена с помощью мыши,
  • есть визуальный желоб между так называемая основной кнопки и его фальшивый выпадающий списком,
  • Bootstrap имеет некоторые маленькая ошибка (я думаю), которая заставляет его не навешивать всю область ниже стрелки вниз, когда в элементе отсутствует подпись и значок.

Есть ли другие варианты, возможности или обходные пути для решения этой проблемы? Или я слишком много ожидаю?

ответ

3

Font Awesome страница имеет точно, что я искал для, без необходимости добавлять дополнительный код или CSS.

Я возвращаюсь к кнопкам «Иконки» и «Пример», которые являются идеальными раскрывающимися списками расщепленных кнопок, т. Е. Его можно щелкнуть как одну кнопку, и вы можете открыть раскрывающийся список рядом с ним, не касаясь основной кнопки.

Однако это делается через отдельные элементы, что означает огромное пространство между главной кнопкой и стрелкой вниз.

Here is пример Bootply, который повторяет этот код и такое поведение.

+1

Спасибо, что указали пример Font Awesome! Я смог сделать разумный размер, добавив нулевые поля в дополнительные классы Font Awesome: '.navbar-nav> li.dropdown-split-left> a { padding-right: 0; margin-right: 0; } .navbar-nav> li.dropdown-split-right> a { padding-left: 7px; margin-left: 0; } ' –

+0

Отлично! Почему бы вам не назвать это полнофункциональным ответом? :> – trejder

3

Я не понимаю, почему вы хотите разделить основную кнопку от выпадающего списка. Это уже отдельные структуры (привязка классом группы кнопок). Я не вижу маленькую ошибку. О желобе .btn, .navbar .btn и .btn-navbar имеют разные правила css. Для зависания кнопки и выпадающий один раз добавить/удалить дополнительный класс CSS и добавить на MouseEnter и MouseLeave см: http://bootply.com/66352

Дополнительное правило CSS для висения кнопки .btn-опасность:

.buttonhover-danger 
{ 
    color: #ffffff; 
    background-color: #bd362f; 
    background-image: none; 
    *background-color: #a9302a; 
} 

парить все кнопки/выпадающие с .btn-класса опасности:

$('.btn-danger').mouseenter(function(){$('.btn-danger').addClass('buttonhover-danger')}); 
$('.btn-danger').mouseleave(function(){$('.btn-danger').removeClass('buttonhover-danger')}); 
+0

Спасибо, за решение! Ответ на ваш вопрос («_Why split? _») Совершенно очевиден (по крайней мере, для меня).У меня есть список медиафайлов, в основном посещаемая страница, и множество связанных с мультимедиа операций (например, добавление, конвертирование, просмотр статистики и т. Д.), Которые не так часто используются. Я хочу, чтобы в основном использовать опцию (список носителей), чтобы быть доступной с помощью прямого щелчка, в то время как менее распространенные функции должны быть _hidden_ ​​в выпадающем списке. Я не хочу, чтобы пользователи нажимали элемент навигации и выбирали «Список» из раскрывающегося списка, каждый раз, когда они хотят перейти в список (очень часто используемая операция). – trejder

+0

Ответ может быть проще: почему вы используете раскрывающееся меню с разделительной кнопкой? Причина точно такая же, только я хочу использовать ее в navbar. – trejder

Смежные вопросы