Убедитесь, что на вашем сервере установлен Sendmail.
Если вы проверили свой код и проверили, что там нет ничего плохого, перейдите в / var / mail и проверьте, пуста ли эта папка.
Если он пуст, вам нужно будет сделать:
sudo apt-get install sendmail
, если вы находитесь на сервере Ubuntu.
Существует два подхода к центрированию столбца <div>
в Bootstrap 3:
Первый подход использует собственные классы смещения Bootstrap, поэтому он не требует изменение разметки и отсутствие дополнительных CSS. Ключ должен установить смещение, равное половине оставшегося размера строки. Например, столбец размером 2 был бы центрирован добавлением смещения 5, это (12-2)/2
.
В разметке это будет выглядеть так:
<div class="row">
<div class="col-md-2 col-md-offset-5"></div>
</div>
Теперь, существует очевидный недостаток этого метода, он работает только для четных размеров столбцов, поэтому поддерживаются только .col-X-2
, .col-X-4
, col-X-6
, col-X-8
и col-X-10
.
Вы можете центрировать любой размер столбца, используя проверенную технику margin: 0 auto;
, вам просто нужно позаботиться о плавании, которое добавляется сеткой Bootstrap. Я рекомендую определить собственный CSS-класс следующим образом:
.col-centered{
float: none;
margin: 0 auto;
}
Теперь вы можете добавить его к любому размеру столбца при любом размере экрана, и он будет легко работать с отзывчивой компоновкой Bootstrap:
<div class="row">
<div class="col-lg-1 col-centered"></div>
</div>
Примечание. При использовании обоих методов вы можете пропустить элемент .row
и иметь столбец с центром внутри .container
, но вы заметили бы минимальную разницу в фактическом размере столбца из-за заполнения в классе контейнера.
Обновление:
Поскольку v3.0.1 Bootstrap имеет встроенный класс с именем center-block
, который использует margin: 0 auto
, но отсутствует float:none
. Вы можете добавить это в свой CSS, чтобы он работал с сеткой.
Это не мой код, но он отлично работает (проверен на Bootstrap 3), и мне не нужно возиться с col-offset.
Демо:
/* centered columns styles */
.row-centered {
text-align: center;
}
.col-centered {
display: inline-block;
float: none;
/* reset the text-align */
text-align: left;
/* inline-block space fix */
margin-right: -4px;
text-align: center;
background-color: #ccc;
border: 1px solid #ddd;
}
<div class="container">
<div class="row row-centered">
<div class="col-xs-6 col-centered">Column 6</div>
<div class="col-xs-6 col-centered">Column 6</div>
<div class="col-xs-3 col-centered">Column 3</div>
<div class="col-xs-3 col-centered">Column 3</div>
<div class="col-xs-3 col-centered">Column 3</div>
</div>
</div>
Вы можете использовать text-center
для строки и убедиться, что внутренние divs имеют display:inline-block
(с не float
)
как:
<div class="container">
<div class="row text-center" style="background-color : black;">
<div class="redBlock">A red block</div>
<div class="whiteBlock">A white block</div>
<div class="yellowBlock">A yellow block</div>
</div>
</div>
и css:
.redBlock {
width: 100px;
height: 100px;
background-color: aqua;
display: inline-block
}
.whiteBlock {
width: 100px;
height: 100px;
background-color: white;
display: inline-block
}
.yellowBlock {
width: 100px;
height: 100px;
background-color: yellow;
display: inline-block
}
Скрипка: http://jsfiddle.net/DTcHh/3177/
Попробуйте этот код.
<body class="container">
<div class="col-lg-1 col-lg-offset-10">
<img data-src="holder.js/100x100" alt="" />
</div>
Здесь я использовал col-lg-1, а смещение должно быть 10 для правильной центровки div на больших устройствах, если вам нужно, чтобы он сосредоточился на медиане на большом устройстве, а затем просто изменил lg на md и т. д., дайте мне знать, если какая-либо проблема.
Если вы поместите это в свою строку, все столбцы внутри будут центрированы:
.row-centered {
display: flex;
justify-content: space-between;
}
Попробуйте это
<div class="row">
<div class="col-xs-2 col-xs-offset-5"></div>
</div>
Вы можете использовать другие col
, а также col-md-2
и т. д.
С помощью Bootstrap v4 это можно сделать, просто добавив .justify-content-center
к .row
<div>
<div class="row justify-content-center">
<div class="col-1">centered 1 column</div>
</div>
https://getbootstrap.com/docs/4.0/ утилиты / Flex / # оправдает-контента
Bootstrap version 3 имеет класс .text-center.
Просто добавьте этот класс:
text-center
Он просто загрузит этот стиль:
.text-center {
text-align: center;
}
Пример:
<div class="container-fluid">
<div class="row text-center">
<div class="col-md-12">
Bootstrap 4 is coming....
</div>
</div>
</div>
Для тех, кто хочет центрировать элементы столбца на экране, когда у вас нет точного числа, чтобы заполнить вашу сетку, я написал небольшой фрагмент JavaScript, чтобы вернуть имена классов:
function colCalculator(totalNumberOfElements, elementsPerRow, screenSize) {
var arrayFill = function (size, content) {
return Array.apply(null, Array(size)).map(String.prototype.valueOf, content);
};
var elementSize = parseInt(12 / elementsPerRow, 10);
var normalClassName = 'col-' + screenSize + '-' + elementSize;
var numberOfFittingElements = parseInt(totalNumberOfElements / elementsPerRow, 10) * elementsPerRow;
var numberOfRemainingElements = totalNumberOfElements - numberOfFittingElements;
var ret = arrayFill(numberOfFittingElements, normalClassName);
var remainingSize = 12 - numberOfRemainingElements * elementSize;
var remainingLeftSize = parseInt(remainingSize / 2, 10);
return ret.concat(arrayFill(numberOfRemainingElements, normalClassName + ' col-' + screenSize + '-push-' + remainingLeftSize));
}
Если у вас есть 5 элементов, и вы хотите иметь 3 строки на экране md
, вы делаете это:
colCalculator(5, 3, 'md')
>> ["col-md-4", "col-md-4", "col-md-4", "col-md-4 col-md-push-2", "col-md-4 col-md-push-2"]
Имейте в виду, что второй аргумент должен быть делимым на 12.
Метод 1:
<div class="container">
<div class="row">
<div class="col-md-2 col-md-offset-5">
YOUR CONTENT
</div>
</div>
</div>
Способ 2:
CSS
.float-center{float: none;}
<div class="container">
<div id="mydev" class="center-block float-center" style="width:75%;">
YOUR CONTENT
</div>
</div>
Bootstrap Советы, примеры и инструменты: OnAirCode g0]
Я предлагаю просто использовать класс text-center
:
<body class="container">
<div class="col-md-12 text-center">
<img data-src="holder.js/100x100" alt="" />
</div>
</body>
img
может быть задан как блок.
– ProfileTwist
12 August 2013 в 19:34
.centered img { display: inline; }
к вашему ответу, а затем вместо этого он был бы достоин голосования.
– ProfileTwist
13 August 2013 в 16:02
Это, вероятно, не самый лучший ответ, но есть еще одно творческое решение. Как указано koala_dev, коррекция столбцов работает только для четных размеров столбцов. Однако при вложенности строк вы можете также центрировать неравномерные столбцы.
Вставить исходный вопрос, где вы хотите центрировать столбец из 1 внутри сетки 12.
Например:
<div class="container">
<div class="row">
<div class="col-md-offset-5 col-md-2">
<div class="row">
<div class="col-md-offset-3 col-md-6">
centered column with that has an "original width" of 1 col
</div>
</div>
</div>
</div>
</div>
См. эту скрипту , обратите внимание, что вам нужно увеличить размер окна вывода, чтобы увидеть результат, иначе столбцы будут обертываться.
Чтобы центрировать более одного столбца в строке Bootstrap - и количество cols нечетно, просто добавьте этот класс css
ко всем столбцам в этой строке:
.many-cols-centered { // To horizontally center bootstrap odd cols, eg col-lg-9, col-md-3, works well in lg
display:inline-block;
float:none;
}
Итак, в вашем HTML у вас есть что-то вроде:
<div class="row text-center"> <!-- text-center centers all text in that row -->
<div class="col-lg-3 col-md-3 col-sm-3 col-xs-12 many-cols-centered">
<img src='assets/image1.jpg'>
<h3>You See</h3>
<p>I love coding.</p>
</div>
<div class="col-lg-3 col-md-3 col-sm-3 col-xs-12 many-cols-centered">
<img src='assets/image2.jpg'>
<h3>You See</h3>
<p>I love coding.</p>
</div>
<div class="col-lg-3 col-md-3 col-sm-3 col-xs-12 many-cols-centered">
<img src='assets/image3.jpg'>
<h3>You See</h3>
<p>I love coding.</p>
</div>
</div>
Просто добавьте это в свой собственный CSS-файл, отредактировав файлы Bootstrap CSS напрямую, не рекомендуется и отменяет вашу способность использовать cdn.
.center-block {
float: none !important
}
Почему?
Bootstrap CSS (Вер. 3.7 и ниже) использует: margin: 0 auto ;, но он переопределяется свойством float контейнера размера.
PS: После добавления этого класса не забудьте установить классы по правильному порядку.
<div class="col-md-6 center-block">Example</div>
3.3.7
, и это единственный метод, который работает для меня!
– illagrenan
6 September 2016 в 14:52
У Bootstrap 3 теперь есть встроенный класс для этого .center-block
.center-block {
display: block;
margin-left: auto;
margin-right: auto;
}
Если вы все еще используете 2.X, просто добавьте это в свой CSS.
Теперь Bootstrap 3.1.1 работает с .center-block
, и этот вспомогательный класс работает с системой столбцов.
Bootstrap 3 Центр вспомогательного класса .
Пожалуйста, проверьте этот jsfiddle DEMO :
<div class="container">
<div class="row">
<div class="center-block">row center-block</div>
</div>
<div class="row">
<div class="col-md-6 brd">
<div class="center-block">1 center-block</div>
</div>
<div class="col-md-6 brd">
<div class="center-block">2 center-block</div>
</div>
</div>
</div>
<div class="row">
<div class="col-xs-2 col-center-block">row col-xs-2 col-center-block</div>
</div>
[/g2]
Центр столбцов столбцов с помощью col-center-block
вспомогательного класса.
.col-center-block {
float: none;
display: block;
margin: 0 auto;
/* margin-left: auto; margin-right: auto; */
}
float:none
, убедившись, что в центральном блоке div применен стиль style="width : ?px"
. Например, ширина изображения. Работает с 3.2.2
– ppumkin
4 March 2015 в 22:31
Предпочтительным методом центрирующих столбцов является использование «смещений» (т.е.: col-md-offset-3
)
Примеры центровки центровки Bootstrap 3.x
Для центрирующие элементы, есть center-block
класс-помощник .
Вы также можете использовать text-center
для центра текста (и встроенных элементов).
Демоверсия : http://bootply.com/91632
EDIT - Как указано в комментариях, center-block
работает над содержимым столбца и display:block
элементов, но не будет работать над самим столбцом (col-*
divs), потому что Bootstrap использует float
.
Теперь с помощью Bootstrap 4 методы центрирования изменились ..
text-center
по-прежнему используется для display:inline
mx-auto
заменяет элементы center-block
на центр display:block
offset-*
или mx-auto
можно использовать для центрирования столбцов сетки mx-auto
(поля автоматической оси x) будут центрировать элементы display:block
или display:flex
, которые имеют определенную ширину , (%
, vw
, px
и т. д.). Flexbox используется по умолчанию для столбцов сетки, поэтому существуют также различные методы центровки по методу flexbox.
Демо-бутстрап 4 Горизонтальное центрирование
Для вертикального центрирования в BS4 см. https://stackoverflow.com/a/41464397/171456
text-center
, которые не были предоставлены ни одним из других ответов. Этот голос получает мой голос.
– domoarigato
2 February 2015 в 20:41
Поскольку мне никогда не нужно центрировать только один .col-
в пределах .row
, я устанавливаю следующий класс в обертке .row
моих целевых столбцов.
.col-center > [class*="col-"] {
float: none;
margin-left: auto;
margin-right: auto;
}
Пример
<div class="full-container">
<div class="row col-center">
<div class="col-xs-11">
Foo
</div>
<div class="col-xs-11">
Bar
</div>
</div>
</div>
.clearfix
не будет работать в этом случае, потому что он не удаляет свойство float для элементов (которое необходимо центрировать с помощьюmargin: 0 auto
), оно просто заставляет контейнер обертывать любые плавающие элементы внутри – koala_dev 9 July 2014 в 00:10float:none;
– airtonix 28 February 2015 в 04:50