#html #css #firefox #alignment
#HTML #css #firefox #выравнивание
Вопрос:
У меня возникли проблемы с выравниванием обычного <button>
рядом с вводом в Firefox. Я получаю следующий вывод в Firefox:
Класс ввода — university, класс кнопки — next, а код CSS — следующий:
.university {
font-family: 'Open Sans', sans-serif;
font-size: 16px;
text-transform: uppercase;
padding: 20px;
width: 400px;
display: block;
border: none;
color: #000;
border-radius: 3px 0px 0px 3px;
-moz-border-radius: 3px 0px 0px 3px;
-webkit-border-radius: 3px 0px 0px 3px;
outline-style: none;
outline-width: 0px;
outline-color: #000;
}
#next {
background-color: #C44D58;
font-family: 'Open Sans', sans-serif;
font-size: 16px;
text-transform: uppercase;
width: 150px;
padding: 20px;
margin: 0;
color: #FFF;
border: none;
border-radius: 0px 3px 3px 0px;
-moz-border-radius: 0px 3px 3px 0px;
-webkit-border-radius: 0px 3px 3px 0px;
outline-style: none;
outline-width: 0px;
outline-color: #000;
}
И HTML-это:
<div class="universityContainer">
<input type="text" class="university typeahead" placeholder="University Name">
<button id="next">NEXT</button>
</div>
CSS для .universityContainer
является:
.universityContainer {
display: table-cell;
vertical-align: middle;
}
Примечание: Следует отметить, что он корректно отображается во всех браузерах, кроме Firefox.
Ответ №1:
Удалить display: block
из .university
. Скрипка:http://jsfiddle.net/gf9Tr /
Комментарии:
1. Это результат удаления
display: block;
2. Вы можете попробовать использовать
vertical-align: middle
как для.university
, так и для#next
. Или предоставьте больше кода. Потому что удалениеdisplay: block
приводит к выравниванию обоих элементов в Chrome и Firefox.3. PS Хорошей практикой является предоставление jsfiddle эффекта, который вы наблюдаете. Облегчает понимание сути проблемы.
4. Может ли это иметь какое-то отношение к typeahead.js ?
5. @Shazer2 выполняет typeahead.js случайно не измените стили для этих элементов?
Ответ №2:
Вы можете удалить display: block;
или использовать display: inline-block;
вместо этого в классе университета.
Ответ №3:
Вам нужно изменить display:block
в input
элементе на display: inline-block
. Вот jsbin, чтобы показать, что они выстраиваются правильно.