Форум программистов, компьютерный форум, киберфорум
HTML, CSS
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/13: Рейтинг темы: голосов - 13, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 04.08.2013
Сообщений: 6

Центрирование блока DIV

04.08.2013, 21:38. Показов 2725. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток!
Верстая сайт, возник один вопрос. Есть блок DIV который должен размещаться по центру страницы. Но размеры этого блока не заданы, то есть width и height установлены auto. Подскажите как это реализовать не используя JavaScript?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.08.2013, 21:38
Ответы с готовыми решениями:

Центрирование картинки внутри блока div
<div class="photo_container"> <div class="photo_block_1_1"> <div class="photo_1_1" ><a href=""><img...

Центрирование блока div через css
Подкажите, можно ли в css отцентрировать блок div? Но не как фоновое изображение, а просто как сам блок?

Центрирование картинки в div, которая вылазит за границы div
Проблема: центрирование картинки в div, которая вылазит за границы div`а. Что можете посоветовать, у меня не получается. Картинки: 1...

11
0 / 0 / 0
Регистрация: 29.03.2013
Сообщений: 3
04.08.2013, 22:07
По идее так:
HTML5
1
<div class = "myClass">Ваш блок</div>
CSS
1
.myClass {text-align:center;}
0
0 / 0 / 0
Регистрация: 04.08.2013
Сообщений: 6
04.08.2013, 22:18  [ТС]
Спасибо за столь быстрый ответ. Этот метод мне известен, он центрирует по горизонтали, но в моем случае еще нужно центрировать по вертикали
0
 Аватар для Ruisenor
130 / 130 / 1
Регистрация: 29.05.2013
Сообщений: 612
04.08.2013, 22:24
попробуйте такой код
CSS
1
vertical-align: middle;
вот здесь гляньте
0
0 / 0 / 0
Регистрация: 29.03.2013
Сообщений: 3
04.08.2013, 22:35
HTML5
1
<div class = "myClass"><div class = "vashBlock"></div></div>
CSS
1
2
.myClass {text-align:center;}
.vashBlock {top:50%; position:absolute;}
0
0 / 0 / 0
Регистрация: 04.08.2013
Сообщений: 6
04.08.2013, 22:59  [ТС]
Еще до появления HTML5, в таблице можно было горизонтально выровнять контент с помощью свойства valign = "center". Именно такого эффекта я хочу добиться методами CSS, так как с появлением HTML 5 свойство valign убрали. А vertical-align и valign работают по разному! Об этом можете прочесть здесь

Добавлено через 18 минут
Цитата Сообщение от Adspero Посмотреть сообщение
.myClass {text-align:center;}
.vashBlock {top:50%; position:absolute;}
Увы и ваше решение не подошло. Если в первом случае было центрирование по горизонтали, то во втором случае центрирование не происходит вообще ... Как все получилось я схематически показал на
0
 Аватар для Soldado
901 / 833 / 198
Регистрация: 28.06.2012
Сообщений: 1,607
Записей в блоге: 4
04.08.2013, 23:19
Задайте отступ margin отрицательным в половину соответствующих размеров блока
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<html>
  <head><meta http-equiv="Content-Type" content="text/html; charset=windows-1251" /> 
    <title>Центрирование</title>
 <style>
#vertical{
position: absolute;
top:50%;
left:50%;
margin-top:-75px;
margin-left:-300px; 
width:600px;
height:150px;
background:#c4fdc7;
border: 2px solid #2f7807;
}
</style>    
  </head>
  <body>
    <div id="vertical"></div>
    
  </body>
</html>
0
Эксперт по компьютерным сетямЭксперт NIX
 Аватар для Dmitry
13440 / 7534 / 830
Регистрация: 09.09.2009
Сообщений: 29,554
04.08.2013, 23:57
Цитата Сообщение от Soldado Посмотреть сообщение
Задайте отступ margin отрицательным в половину соответствующих размеров блока
дык ТС вроде бы сразу сказал
Цитата Сообщение от nasiqEx Посмотреть сообщение
Но размеры этого блока не заданы,
по поводу выравнивания по вертикали где-то примеры читал, в которых создавался дополнительный див, его - на все 100% по вертикали, а уже в нем размещался тот див, который выравнивали посредине первого...
0
0 / 0 / 0
Регистрация: 04.08.2013
Сообщений: 6
05.08.2013, 00:18  [ТС]
Спасибо Soldado, с этим методом я знаком. Дело в том что он прекрасно подходит в том случае если размер блока известный, как в Вашем примере. В моем случае блок не имеет заданных размеров, то есть width: auto и height: auto. Поэтому здесь это не поможет

Добавлено через 17 минут
Уважаемый Dmitry, я догадываюсь о чем Вы говорите, но вот погуглив, я наткнулся на интересное CSS3 свойство -o-object-position. Оно предназначено для того что я хочу - точно центрировать контент, в том числе и мой блок, в середине элемента. Но минус его в том, что работает оно только в Опере, а я делаю кросс браузерный сайт. Возможно кто-то знает подобные свойства для других браузеров, или знает как сделать подобно этому свойству, подскажите...
0
 Аватар для Ruisenor
130 / 130 / 1
Регистрация: 29.05.2013
Сообщений: 612
05.08.2013, 02:47
вот здесь описаны префиксы для браузеров - посмотри там описано для каждого браузера -единственная проблема как всегда с интернет экслорером - но тоже можно найти решение
0
2 / 2 / 0
Регистрация: 11.08.2015
Сообщений: 33
26.08.2015, 09:26
Не имея конкретных размеров, вы можете использовать свойство display:flex
0
 Аватар для vovandr
636 / 523 / 195
Регистрация: 19.08.2013
Сообщений: 1,400
26.08.2015, 09:45
Способ 1:
HTML5
1
2
3
4
5
<div class="wrap">
   <div class="centered">
     some text here
  </div>
</div>
CSS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
html,body{
  height: 100%;
}
.wrap{
  text-align: center;
  height: 100%;
}
.wrap:before{
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}
.centered{
  vertical-align: middle;
  display: inline-block;
}
http://codepen.io/anon/pen/LVwaoz

Способ 2:
HTML5
1
2
3
4
5
<div class="wrap">
   <div class="centered">
     some text here
  </div>
</div>
CSS
1
2
3
4
5
6
7
8
9
10
11
12
13
html,body{
  height: 100%;
}
.wrap{
  height: 100%;
  width: 100%;
  text-align: center;
  display: table;
}
.centered{
  display: table-cell;
  vertical-align: middle; 
}
http://codepen.io/anon/pen/bdXZyJ

Способ 3: (в css использую autoprefixer)
HTML5
1
2
3
4
5
<div class="wrap">
   <div class="centered">
     some text here
  </div>
</div>
CSS
1
2
3
4
5
6
7
8
9
html, body{
  height: 100%;
}
.wrap{
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
http://codepen.io/anon/pen/zGgbVo

Способ 4:
HTML5
1
2
3
4
5
<div class="wrap">
   <div class="centered">
     some text here
  </div>
</div>
CSS
1
2
3
4
5
6
7
8
9
10
11
12
13
html, body{
  height: 100%;
}
.wrap{
  text-align: center;
  height: 100%;
}
.centered{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
http://codepen.io/anon/pen/ZGgPgW

Эту задачу сам люблю давать верстальщикам на собеседовании))))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
26.08.2015, 09:45
Помогаю со студенческими работами здесь

Центрирование блока
может и велосипед но сделал таким вот методом центрирование (блок по центру экрана снизу сверху независимо от монитора и его разрешения) ...

Центрирование div
отображение идёт по левому краю а не по центру &lt;body&gt; &lt;LINK REL=&quot;STYLESHEET&quot; TYPE=&quot;TEXT/CSS&quot; HREF=&quot;ZAG.CSS&quot; /&gt; ...

Центрирование блока в блоке
Здравствуйте! Такой вопрос. Пробую выровнять блок в другом блоке по центру только вот сам текст второго блока выравнивается как надо а сам...

Горизонтальное центрирование блока
День добрый.Возникла такая проблема,не получается отцентрировать блок,уже тупо все переискал но решения не нашел. Вот собственно код: ...

Центрирование блока с текстом
Здравствуйте! Есть блок div с атрибутом &quot;text-align: center;&quot;, а в нём есть &lt;pre&gt;&lt;/pre&gt;. Вопрос: Как оставить...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru