Как я могу заставить кнопки загрузки Twitter выровняться по правому краю?
У меня есть простая демонстрация здесь:
<ul>
<li>One <input class="btn pull-right" value="test"></li>
<li>Two <input class="btn pull-right" value="test2"></li>
</ul>
У меня есть неупорядоченный список, и для каждого элемента списка я хочу иметь текст слева, а затем выровненную по правому краю кнопку. Я попытался использовать pull-right, но это полностью испортило выравнивание. Что я делаю не так?
15 ответов:
вставить
pull-right
в атрибут class и пусть bootstrap упорядочивает кнопки.на Bootstrap 2.3, смотрите:http://getbootstrap.com/2.3.2/components.html#misc > вспомогательные классы > .тянуть вправо.
на Bootstrap 3, смотрите:https://getbootstrap.com/docs/3.3/css/#helper-classes > вспомогательные классы.
на Bootstrap 4 см.: https://getbootstrap.com/docs/4.0/utilities/float/#responsive
The
pull-right
команда была удалена и заменена наfloat-right
илиfloat-{sm,md,lg,xl}-{left,right,none}
класс " pull-right "может быть неправильным, потому что в нем используется" float: right " вместо выравнивания текста.
проверка файла css bootstrap 3 я нашел класс "text-right" в строке 457. Этот класс должен быть правильным способом выравнивания текста справа.
код:
<div class="row"> <div class="col-xs-12"> <div class="text-right"> <button type="button" class="btn btn-default">Default</button> </div> </div> </div>
Обновление 2018-Bootstrap 4.0.0
The
pull-right
класс сейчасfloat-right
в Bootstrap 4...<div class="row"> <div class="col-12">One <input type="button" class="btn float-right" value="test"></div> <div class="col-12">Two <input type="button" class="btn float-right" value="test"></div> </div>
http://www.codeply.com/go/nTobetXAwb
также лучше не выравнивать список ul и использовать элементы блока для строк.
и
float-right
все еще не работает?помните, что Bootstrap 4 Теперь flexbox, и многие элементы
display:flex
что может помешать плыть-прямо с работы. В некоторых случаях классы util любятalign-self-end
илиml-auto
работа для правого выравнивания элементов, которые находятся внутри контейнера flexbox, как Bootstrap 4 .строка, карта или навигатор.также помните, что
text-right
все еще работает на встроенных элементах.Bootstrap 4 выровнять правильные примеры
Bootstrap 3
использовать
pull-right
класса.
использовать
button
тег вместоinput
и использоватьpull-right
класса.
pull-right
класс полностью испортит обе ваши кнопки, но вы можете исправить это, определив пользовательское поле с правой стороны.<button class="btn btn-primary pull-right btn-sm RbtnMargin" type="button">Save</button> <button class="btn btn-primary pull-right btn-sm" type="button">Cancel</button>
затем используйте следующий CSS для класса
.RbtnMargin { margin-left: 5px; }
добавление к принятому ответу, при работе в контейнерах и столбцах, которые встроены в заполнение из bootstrap, у меня иногда есть полный растянутый столбец с дочерним div, который делает вытягивание, чтобы быть способом идти.
<div class="row"> <div class="col-sm-12"> <div class="pull-right"> <p>I am right aligned, factoring in container column padding</p> </div> </div> </div>
в качестве альтернативы, все ваши столбцы добавить до вашего общего количества столбцов сетки (12 по умолчанию) наряду с тем, что первый столбец будет смещен.
<div class="row"> <div class="col-sm-4 col-sm-offset-4"> This content and its sibling.. </div> <div class="col-sm-4"> are right aligned as a whole thanks to the offset on the first column and the sum of the columns used is the total available (12). </div> </div>
извините за ответ на более старый уже ответленный вопрос, но я подумал, что укажу пару причин, по которым ваш jsfiddle не работает, если другие проверяют его и задаются вопросом, почему класс pull-right, как описано в принятом ответе, там не работает.
- url-адрес начальной загрузки.файл CSS является недействительным. (возможно, это сработало, когда вы задали вопрос).
- вы должны добавить атрибут: type= "button" к вашему элементу ввода, или это не будет rendered as a button-он будет отображаться как поле ввода. А еще лучше, используйте элемент.
- кроме того, поскольку pull-right использует поплавки, вы получите некоторое смещение макета кнопки, потому что каждый LI не имеет достаточной высоты для размещения высоты кнопки. Добавление некоторого css линейной высоты или минимальной высоты к LI будет решать эту проблему.
рабочая скрипка: http://jsfiddle.net/3ejqufp6/
<ul> <li>One <input type="button" class="btn pull-right" value="test"/></li> <li>Two <input type="button" class="btn pull-right" value="test2"/></li> </ul>
(I также добавлена минимальная ширина кнопок, так как я не мог выдержать вид рваный правый оправданный взгляд на кнопки из-за различной ширины :) )
используя Bootstrap
pull-right
помощник не работает для нас, потому что он используетfloat: right
, который силinline-block
элементы, чтобы статьblock
. И когда.btn
Сblock
, они теряют естественный запас, чтоinline-block
обеспечивает им квази-текстовые элементы.поэтому вместо этого мы использовали
direction: rtl;
на родительский элемент, который вызывает текст внутри этого элемента в макет справа налево, и что вызываетinline-block
элементы макета справа налево, тоже. Вы можете использовать меньше, как показано ниже, чтобы предотвратить размещение детейrtl
тоже:/* Flow the inline-block .btn starting from the right. */ .btn-container-right { direction: rtl; * { direction: ltr; } }
и использовать его как:
<div class="btn-container-right"> <button class="btn">Click Me</button> </div>
применить
pull-right
класс для кнопки. http://getbootstrap.com/css/#helper-classes-floats -> вспомогательные классыэта ссылка поможет
увод вправо был амортизируются как "В3".1.0 . Просто предупреждаю.
http://getbootstrap.com/components/#callout-dropdown-pull-right
можете ли вы попробовать пользовательский CSS в сторону загрузочного CSS, чтобы увидеть, есть ли какие-либо изменения. Попробуй
.move-rigth{ display: block; float: right; }
Если это работает, то вы можете попробовать манипулировать тем, что у вас есть или добавить другое форматирование к этому и достичь того, что вы хотите. Потому что вы используете bootstrap не означает, что если он не предлагает вам то, что вы хотите, то вы просто управлять им. Вы работаете с вашими кодами, и поэтому вы приказываете ему делать то, что вы говорите. Ура!
<ul> <li class="span4">One <input class="btn btn-small" value="test"></li> <li class="span4">Two <input class="btn btn-small " value="test2"</li> </ul>
Я просто использовал макет..применить стили для Li..
или
<ul> <li>One <input class="btn" value="test"></li> <li>Two <input class="btn" value="test2"</li> </ul>
в CSS
li { line-height: 20px; margin: 5px; padding: 2px; }
теперь вам нужно добавить .выпадающее меню-право на существующий .выпадающий список-элемент меню. pull-right больше не поддерживается. Подробнее здесь http://getbootstrap.com/components/#btn-dropdowns
вы также можете использовать пустые столбцы, чтобы дать пространства слева
как
<div class="row"> <div class="col-md-8"></div> <!-- blank space increase or decrease it by column # --> <div class="col-md-4"> <button id="saveedit" name="saveedit" class="btn btn-success">Save</button> </div> </div>
демо :: демо Jsfiddle
для bootstrap 4 документация
<div class="row justify-content-end"> <div class="col-4"> Start of the row </div> <div class="col-4"> End of the row </div> </div>