2015-06-03 3 views
0

Просто две небольшие проблемы, работающие над назначением школы, чтобы воссоздать общий веб-сайт, используя бутстрап.Раскрывающееся меню/поисковая строка bootstrap

A) Я скрывал кнопку ввода ввода/отправки в горизонтальной навигационной панели, когда экран равен < 820px и включает в себя другой раскрывающийся список с именем «поиск» с полем ввода в раскрывающемся списке, что прекрасно.

Но я пытаюсь скрыть это раскрывающееся окно поиска до тех пор, пока экран не будет < 820px и нацелиться на этот список с классом и display: none, но он по-прежнему отображается. В любом случае, вы можете это сделать?

<li class="dropdown searchDropDown"> 
    <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Search<span class="caret"></span></a> 
     <ul class="dropdown-menu" role="menu"> 
      <li> 
       <input type="text" class="form-control searchBox" placeholder="Search"> 
       <button type="submit" class="btn btn-default">Submit</button> 
      </li> 
     </ul> 
</li> 

моего .searchDropDown {display:none} и есть медиа-запрос для максимальной ширины 820px display: block Но проблема в том, что не скрывает этот класс списка в полном размере страницы.

B) когда я нажимаю раскрывающееся меню поиска и пытаюсь щелкнуть по полю ввода поиска, но он теряет фокус и рулон обратно.

+0

Вы уверены, что не ваш дисплей: нет свойство определяется под дисплеем: блок один? – brance

+0

Было бы хорошо показать css, который вы используете, задавая вопрос о css. Вы можете использовать [JSFiddle with bootstrap] (http://jsfiddle.net/brainbolt/52VtD/4/) и поместить свой css и html для совместного использования с нами. – George

+0

может использовать некоторую дополнительную информацию, чтобы выяснить, почему дисплей: ни один не работает. Может быть, другие css перезаписывают его, возможно, ваш CSS помечен неправильно. Не могу быть уверен –

ответ

2

B) Ваш щелчок, распространяющийся выше литий, который имеет событие щелчка присоединенную к нему, можно добавить функцию, как это (JQuery)

$('.searchBox').click(function(e){ 
e.stopPropagation(); 
}); 

, если это не сработает, убедитесь, что вы на самом деле нажимаете на вход, а не на другой элемент.

Я вернусь к А через минуту

+0

это сработало отлично, спасибо @ VladPintea – joshuaaron

1

На вопрос А использование

@media screen and (min-width: 820px) { 
    .searchDropDown { 
    display: none!important; 
    } 
} 

Кроме того, не забудьте закрыть ваши img и input теги

+0

Да, это сделает, почему это не работает без «важного»? спасибо, но – joshuaaron

+0

@joshuaaron это переопределяется.nav> li, вы можете использовать свой браузер для проверки элементов, чтобы увидеть, какие правила CSS применяются к ним, я использую хром, поскольку мне это проще, но вы можете сделать это с любым браузером. Чтобы получить доступ к этому, вы обычно можете щелкнуть правой кнопкой мыши и выбрать элемент проверки или нажать f12 :) – George

+0

Спасибо, не мог найти, что я сам в элементах проверки, чувствую себя глупо. Большая помощь, хотя и ценится! @GeorgeLee – joshuaaron

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