#html #css #center
#HTML #css #центр
Вопрос:
Я хотел бы создать страницу, содержащую произвольное количество плиток фиксированного размера, где количество плиток в каждой строке будет регулироваться в соответствии с шириной окна. Я создал эту функциональность здесь.
Однако я хочу, чтобы эти плитки были центрированы в сером поле. Я попытался создать промежуточный #tile-box
элемент, который, как я думал, я мог бы центрировать и делать переменной шириной, чтобы соответствовать плиткам внутри него, но я не мог заставить это работать вообще.
Любые предложения о том, как расположить плитки по центру в сером div?
Комментарии:
1.
#tile-box { text-align:center; }
— Бум! jsfiddle.net/LHDJj/2
Ответ №1:
ну, я делаю это только в вашем коде
#tile-box {
border: 1px solid blue;
display: table;
text-align:center; //i only added this line to your css
}
вы можете сделать это для центрирования вашего текста, есть много способов, которыми вы можете представить свое тело в своем html, надеюсь, я вам помог…
Ответ №2:
вы прошли большую часть пути, но вам это действительно не нужно display:table
..
CSS
#body {
width: 50em;
max-width: calc(100% - 5em);
margin: auto;
padding: 2em;
margin-bottom: 2em;
background-color: #ccc;
overflow: auto;
}
#tile-box {
border: 1px solid blue;
text-align: center;
}
.tile {
width: 5em;
height: 5em;
background-color: #fff;
margin: 1em;
padding: 0;
display: inline-block;
clear: left;
vertical-align: top;
position: relative;
overflow: hidden;
}
Комментарии:
1. Я думаю
display: table
, что это осталось от одной из моих предыдущих попыток исправить это…
Ответ №3:
Центрирование по горизонтали : text-align: center;
Выравнивание по центру по вертикали : line-height: 12em;/* Height of the container less the font-size */
Результат онлайн здесь: http://jsfiddle.net/LHDJj/17 /