Как выровнять заголовок по центру css
Перейти к содержимому

Как выровнять заголовок по центру css

  • автор:

Как выровнять заголовок по центру контейнера?

5c0a5d4503dc6753213289.jpeg

Как сделать заголовок по середине?
Вот html

Something Nothing

Enean vulputate eleifend tellus. Aenean leo ligula, porttitor eu, consequat vitae, eleifend
ac, enim iam ultricies nisi eleifend tellus.

LET'S TALK

Вот css, но он выравнивает только по ширине, по длине не хочет

.header < display: flex; display: -webkit-box; display: -ms-flexbox; background-image: url('/images/bg-header.png'); min-height: rem(700px); height: 100vh; background-size: cover; background-position: center; &__tittle < justify-content: center; text-align: center; margin: 0 auto; position: relative; max-width: 625px; &-top < font-family: 'Montserrat'; font-size: rem(36px); font-weight: 700; >&-middle < font-family: "Open Sans"; font-size: rem(17px); letter-spacing: -0.42px; >> &-txt < color: $font-head-style; >&-top__left < padding-top: rem(40px); justify-content: flex-start; >&-top__right < justify-content: flex-end; float: right; >> .hamburger-inner, .hamburger-inner:before, .hamburger-inner:after
  • Вопрос задан более трёх лет назад
  • 3324 просмотра

10 вариантов оформления заголовков на сайте с помощью css

Первое, на что обращает внимание посетитель вашего сайта, это заголовки статей. Чем интереснее оформлен заголовок, тем больше он привлекает внимания, и тем больше шансов, что статья будет прочитана.

Многие вебмастера, следуя этому правилу, перегружают заголовки своих статей мерцающей анимацией, нечитаемыми шрифтами и задними фонами токсичных цветов. Делать этого не стоит, т. к. такое оформление вызывает зрительное напряжение и только отпугивает пользователей. Чтобы этого не происходило и при этом заголовок привлекал внимание посетителей сайта, достаточно добавить несколько простых геометрических css — фигур с помощью псевдоэлементов :before и :after.

Вариант 1

HTML -разметка:

CSS — код:

.ex1 h1:after position: absolute;
height: 2px;
width: 100px;
background:rgb(81, 227, 213);
top: 120%;
margin: 0 auto;
left: 0;
right: 0;>
.ex1 h1:before position: absolute;
height: 10px;
width: 10px;
background:rgb(81, 227, 213);
top: 105%;
transform: rotate(45deg);
-webkit-transform: rotate(45deg);
-o-transform: rotate(45deg);
-moz-transform: rotate(45deg);
margin: 0 auto;
left: 0;
right: 0;>

Вариант 2

HTML-разметка:

CSS — код:

h1
.ex2 h1:first-letter color: #fff>
.ex2 h1:after position: absolute;
background:rgb(81, 227, 213);
height: 25px;
width: 25px;
transform:skewX(-20deg);
-webkit-transform: skewX(-20deg);
-o-transform: skewX(-20deg);
-moz-transform: skewX(-20deg);
top: 4%;
left: 24%;
z-index:-1 >

Вариант 3

HTML -разметка:

CSS — код:

.ex3 h1:after position: absolute;
height: 22px;
width: 5px;
background:rgb(81, 227, 213);
top: 9%;
left: 21%;>

Вариант 4

HTML -разметка:

CSS — код:

h1
.ex4 h1:after position: absolute;
height: 35px;
width: 35px;
border-radius: 120px;
border: 1px solid rgb(81, 227, 213);
top: -16%;
left: 22%;
z-index: -1>

Вариант 5

HTML -разметка:

CSS — код:

.ex5 h1:after position: absolute;
height: 2px;
width: 100px;
background:rgb(81, 227, 213);
top: -40%;
margin: 0 auto;
left: 0;
right: 0;>
.ex5 h1:before position: absolute;
height: 2px;
width: 100px;
background:rgb(81, 227, 213);
top: 140%;
margin: 0 auto;
left: 0;
right: 0;>

Вариант 6

HTML -разметка:

CSS — код:

.ex6 h1:after position: absolute;
height: 2px;
width: 100px;
background:rgb(81, 227, 213);
top: 130%;
margin: 0 auto;
left: 0;
right: 0;>

Вариант 7

HTML -разметка:

CSS — код:

.ex7 h1:after position: absolute;
background: rgb(81, 227, 213);
height: 2px;
width: 100px;
top: 115%;
margin: 0 auto;
left: 0;
right: 0;>

.ex7 h1 :before < content: "";
position: absolute;
background: rgb(81, 227, 213);
height: 2px;
width: 20px;
top: 135%;
margin: 0 auto;
left: 0;
right: 0>

Вариант 8

HTML -разметка:

CSS — код:

.ex8 h1 span:before
border: 1px solid rgb(81, 227, 213);
height: 11px;
transform: rotate(45deg);
width: 11px;
background: #fff;
top: 60%;
z-index: 2;
content: «»;
margin: 0 auto;
right: 50%>

.ex8 h1 span:after position: absolute;
border: 1px solid rgb(81, 227, 213);
height: 11px;
transform: rotate(45deg);
width: 11px;
background: #fff;
top: 60%;
z-index: 2;
content: «»;
margin: 0 auto;
left: 51.2%>

.ex8 h1:after background: rgb(81, 227, 213);
position: absolute;
height: 1px;
width: 100px;
top: 65%;
content: «»;
margin: 0 auto;
left: 0;
right: 0;

Вариант 9

HTML -разметка:

CSS — код:

.ex9 h1:before background: rgb(81, 227, 213);
position: absolute;
height: 2px;
width: 100px;
top: 15%;
content: «»;
margin: 0 auto;
left: 0;
right: 0;>.ex9 h1 span:before content: «»;
position: absolute;
height: 10px;
width: 10px;
border: 1px solid rgb(81, 227, 213);
border-radius: 120px;
top: 16%;margin: 0 auto;
left: 0;
right: 0;>

.ex9 h1:after content: «»;
background: rgb(81, 227, 213);
position: absolute;
height: 2px;
width: 100px;
top: 69%;
margin: 0 auto;
left: 0;
right: 0;>

.ex9 h1 span:after content: «»;
position: absolute;
height: 10px;
width: 10px;
border: 1px solid rgb(81, 227, 213);
border-radius: 120px;
top: 59%;
margin: 0 auto;
left: 0;
right: 0;>

Вариант 10

HTML -разметка:

CSS — код:

.ex10 h1:before content: «»;
position: absolute;
border: 10px solid transparent;
border-left: 10px solid rgb(81, 227, 213);
top: 23%;
margin: 0 auto;
left: 15%;
>

.ex10 h1:after content: «»;
position: absolute;
border: 10px solid transparent;
border-right: 10px solid rgb(81, 227, 213);
top: 23%;
margin: 0 auto;
right: 15%;
>

На этом все. Надеюсь, что статья была вам полезной!

Средняя оценка / 5. Количество оценок:

Оценок пока нет. Поставьте оценку первым!

Похожие записи :

font-size css

Как задать размер шрифта с помощью css свойства font-size

Чтобы задать размер шрифта на сайте с помощью css, необходимо у нужного.

Как выровнять текст по горизонтали и вертикали в блоке div с помощью css

Как выровнять текст по горизонтали и вертикали в блоке div с помощью css

Казалось бы, простая задача: выровнять текст по центру блока div. Присваиваем.

как сделать css рамку

Как сделать css рамку

Всем привет. На связи coderistu.ru. В этой статье мы рассмотрим, как сделать.

css затемнение фона

Как сделать css затемнение фона

Всем привет. На связи coderistu.ru В одной из своих статей я писал, как сделать.

как сделать видео фоном сайта или блока

Как сделать видео фоном сайта или блока

Видео на заднем фоне сайта или рекламного блока несомненно привлечет.

Как поставить заголовок по центру в html

В этом уроке мы разберем основные теги html применяемые к тексту, а именно теги &ltb&gt, &lti&gt, &ltu&gt, &lts&gt, &ltcenter&gt, &ltp&gt, &lth1&gt, &lth2&gt, &lth3&gt, &lth4&gt, &lth5&gt, &lth6&gt.

Тег &ltb&gt — делает шрифт жирным (мы уже сталкивались с этим тегом).
Тег &lti&gt — делает шрифт курсивным.
Тег &ltu&gt — подчеркивает текст.
Тег &lts&gt — зачеркивает текст.

* Все эти теги требуют закрытия. Впредь, если я не буду ничего говорить про закрытие тега, то это будет означать, что тег требует закрытия (как сейчас) и это само собой разумеется. Когда мы будем затрагивать теги исключения которые не требуют закрытия, то я обязательно буду это указывать.

Теперь давайте применим теги в нашем коде:

Основные теги html

Мы используем в коде все четыре рассматриваемых тега, а так же тег &ltbr&gt который служит для переноса строки. Мы его применяем таким образом, чтобы наши четыре слова были написаны не в строку, а в столбик.
Результат:

Основные теги html

Теперь познакомимся с еще одним новым тегом &ltcenter&gt. Данный тег выравнивает текст по центру. Давайте применим его в нашем коде и выровним по центру, например, слово «радость». После внесения изменений наш код выглядит так:

Основные теги html

Сохраняем изменения в Notepad (Ctrl + S) и смотрим результат в браузере:

Основные теги html

Еще давайте разберем распространенный тег &ltp&gt. Данный тег называют параграфом, но используется он для разделения текста не на параграфы, а на абзацы. Вначале каждого отдельного абзаца ставится открывающий тег &ltp&gt, в конце абзаца ставится закрывающий тег &lt/p&gt. Демонстрировать Вам рисунок с примером не вижу смысла, так как все из Вас читали книги и газеты, соответственно что такое абзац Вы знаете.

В данном уроке было бы логично рассмотреть тег &ltfont&gt, но мы уже уделили ему должное внимание в 4-ом уроке. Я советую Вам еще раз пробежаться глазами по практической части 4-го урока, это не будет лишним.

Заголовки html.

Теги &lth1&gt, &lth2&gt, &lth3&gt, &lth4&gt, &lth5&gt, &lth6&gt — это заголовки разных уровней. Значимость заголовков соответствует названию тегов. &lth1&gt — самый важный, &lth6&gt — не особо важен, можно обойтись и без него. Давайте применим на практике все 6 вариантов, чтобы Вы поняли принцип их работы. Пишем следующий html код:

Заголовки html

Сохраняем изменения и открываем файл в браузере.

Заголовки html

Заголовки отличаются друг от друга по размеру, чем заголовок важнее, тем он больше. И еще, для того чтобы заголовок писался на новой строке, тег &ltbr&gt (перенос строки) использовать не нужно.

Правила использования заголовков html.

С точки зрения оптимизации Вашей страницы для поисковых систем (Яндекс, Гугл и др.) есть несколько правил и рекомендаций.
1. Самое важное правило: тег &lth1&gt (заголовок 1-го уровня) используется в тексте только один раз и в самом начале статьи. Наличие тега &lth1&gt обязательно. Например, страница на которой Вы сейчас находитесь, имеет заголовок &lth1&gtУрок 6. Основные теги html.&lt/h1&gt
2. Тег &lth2&gt нужно использовать минимум 2 раза, максимум 5.
3. Тег &lth3&gt используется по необходимости.
4. Теги &lth4&gt, &lth5&gt, &lth6&gt можно не использовать вообще (на Ваше усмотрение).
5. Заголовки нужно использовать в строгом порядке. Сначала &lth1&gt, затем &lth2&gt, потом &lth3&gt. Другими словами заголовок &lth3&gt не может находиться выше, чем заголовок &lth2&gt.

Мы принимаем к оплате:

«Подарочный сертификат» от нашего Учебного Центра – это лучший подарок для тех, кто Вам дорог! Оплате обучение и подарите Вашим родным и близким обучение по любому из курсов.

«Сертификат на повторное обучение» дает возможность повторно пройти обучение в нашем Учебном Центре со скидкой 1000 рублей!

Как в html сделать заголовок по центру

Как сделать выравнивание по центру в HTML и CSS?

А затем в CSS файле вашего сайта пишем:

Вместо block-text может быть любое другое название класса.

Если вам нужно сделать выравнивание текста по центру сразу для всех абзацев или заголовков на сайте, то не обязательно для каждого писать это CSS свойство. Достаточно задать или определить класс или идентификатор блока, внутри которого находятся эти абзацы или заголовки, а дальше в CSS файле добавить такую запись:

В этом случае выравнивание текста по центру применится для всех тегов

, которые находятся внутри тега с классом block:

Для выравнивания заголовков внутри блока с классом block запись будет немного другая:

.block h2, .block h3, .block h4, .block h5, .block h5, .block h6

.block h2, .block h3, .block h4, .block h5, .block h5, .block h6

И так со всеми остальными. Пост сегодня получился достаточно длинным. Благодарю тех, кто дочитал его до конца. Как бы того мы не хотели, но придёт момент, когда придётся начать понимать что это за коды, где они расположены и что с ними можно делать. А я сегодня поставлю точку в сообщении и расстанусь с вами на некоторое время.

оформите подписку на новые шпаргалки

Как сделать в css выравнивание текста по центру — text-align

Многие текстовые элементы на веб-странице нужно выравнивать по центру. Чаще всего заголовки. Давайте посмотрим, как делается в css выравнивание текста по центру.

Свойство text-align

За это отвечает свойство text-align и оно имеет четыре значения:

  • Left – выравнивание текста по левому краю элемента, в котором он расположен
  • Right – по правому краю, но при этом направление текста остается неизменным
  • Center – по центру. То есть то, что нам нужно. Никаких дополнительных параметров задавать не нужно – браузер сам поставит текст ровно по центру на разных разрешениях экранов
  • Justify – выравнивание по ширине, когда в каждой строке слова растягиваются так, чтобы занять всю ее ширину

Например, у нас есть произвольный текст с заголовком:

Заголовок

Чтобы выравнять наш заголовок (h2) по центру, нужно написать так:

Свойство выравнивает не только обычный текст, но и все строчные элементы. Например, изображение по умолчанию является строчным элементом, поэтому на него это правило тоже повлияет.

Text-align не действует как свойство float. Если text-align применить к блочному элементу с текстом, то блок не потеряет своего поведения. Будет прижат именно текст в нем, а не сам блок. Заметьте, это отличается от свойства float, которое отправляет вправо или влево весь элемент целиком.

Как сделать заголовок по центру в word?

Порой элементарные вещи на деле выглядят не такими уж безобидными и требуют гораздо больше усилий для достижения результата.

в любом тексте присутствует

заголовок документа . Для его

выделения из общего текста применяется

оформление цветом, шрифтом, размером и так далее. А также прием расположения

по центру страницы Word . Таким образом, весь

документ выглядит намного аккуратнее и акцентирует внимание в местах начала новых глав.

заголовок по центру в документе Word можно, например, с помощью клавиши пробела, нажимая до тех пор, пока курсор не встанет примерно в центр листа по горизонтали. Но эти лишние щелчки клавишей можно исключить, и расположить

по центру страницы , применив элементарное действие —

один щелчок клавиши мышки.

Для этого необходимо установить курсор в начало заголовка, который предполагается перемещать в центр. Затем на вкладке меню ленты «Главная» в разделе «Абзац» нажать значок «

Выровнять по центру ».

Все. Команда активирована. Ваш заголовок переместится в центр листа с учетом установленных параметров страницы.

Упростить эту ситуацию уж совсем до безобразия можно воспользовавшись сочетанием клавиш

В этом разделе «Абзац» к документу можно применить другие способы выравнивания текста, например «Выравнивание по ширине», а еще: уменьшитьувеличить отступ, изменить интервал между строками текста, изменить цвет фона выделенного участка текста и так далее.

Некоторые документы требуют особого оформления, и для этого в арсенале MS Word содержится довольно много средств и инструментов. В числе таковых различные шрифты, стили написания и форматирования, инструменты для выравнивания и многое другое.

Урок: Как выравнивать текст в Ворде

Как бы там ни было, но практически любой текстовый документ невозможно представить без заголовка, стиль которого, конечно же, должен отличаться от основного текста. Решение для ленивых — выделить заголовок жирным, увеличить шрифт на один-два размера и на этом остановится. Однако, есть ведь и более эффективное решение, позволяющее сделать заголовки в Word не просто заметными, а правильно оформленными, да и просто красивыми.

Урок: Как изменить шрифт в Ворде

Создание заголовка с помощью встроенных стилей

В арсенале программы MS Word имеется большой набор встроенных стилей, которые можно и нужно использовать для оформления документов. Кроме того, в данном текстовом редакторе можно также создать и свой собственный стиль, а затем использовать его в качестве шаблона для оформления. Итак, чтобы сделать заголовок в Ворде, выполните следующие действия.

Урок: Как в Word сделать красную строку

1. Выделите заголовок, который необходимо оформить должным образом.

2. Во вкладке “Главная” разверните меню группы “Стили”, нажав на небольшую стрелочку, расположенную в ее правом нижнем углу.

3. В окне, которое откроется перед вами, выберите необходимый тип заголовка. Закройте окно “Стили”.

это основной заголовок, идущий в самом начале статьи, текста;

Заголовок 1

заголовок меньшего уровня;

Заголовок 2

Подзаголовок собственно, это и есть подзаголовок.

Примечание: Как можно заметить со скриншотов, стиль заголовка помимо изменения шрифта и его размера также изменяет и междустрочный интервал между заголовком и основным текстом.

Урок: Как изменить междустрочный интервал в Ворде

Важно понимать, что стили заголовков и подзаголовков в MS Word являются шаблонными, в их основе лежит шрифт Calibri, а размер шрифта зависит от уровня заголовка. При этом, если у вас текст написан другим шрифтом, другого размера, вполне может быть такое, что шаблонный заголовок меньшего (первого или второго) уровня, как и подзаголовок, будут мельче, чем основной текст.

Собственно, именно так получилось в наших примерах со стилями “Заголовок 2” и “Подзаголовок”, так как основной текст у нас написан шрифтом Arial, размер — .

Создание собственного стиля и сохранение его в качестве шаблона

Как было сказано выше, помимо шаблонных стилей, вы также можете создать свой собственный стиль оформления заголовков и основного текста. Это позволяет переключаться между ними по необходимости, а также использовать любой из них в качестве стиля по умолчанию.

1. Откройте диалоговое окно группы “Стили”, расположенной во вкладке “Главная”.

2. В нижней части окна нажмите на первую кнопку слева “Создать стиль”.

3. В окне, которое перед вами появится, задайте необходимые параметры.

В разделе “Свойства” введите название стиля, выберите ту часть текста, для которой он будет использоваться, выберите стиль, на котором он основан, а также укажите стиль для следующего абзаца текста.

В разделе “Формат” выберите шрифт, который будет использоваться для стиля, укажите его размер, тип и цвет, положение на странице, тип выравнивания, задайте отступы и междустрочные интервалы.

В нижней части окна “Создание стиля” выберите необходимый пункт:

  • “Только в этом документе” — стиль будет применим и сохранен только для текущего документа;
  • “В новых документах, использующих этот шаблон” — созданный вами стиль будет сохранен и станет доступен для использования в дальнейшем в других документах.

Выполнив необходимые настройки стиля, сохранив его, нажмите кнопку “ОК”, чтобы закрыть окно “Создание стиля”.

Вот простой пример стиля заголовка (хотя, скорее, подзаголовка), созданного нами:

Примечание: После того, как вы создадите и сохраните свой собственный стиль, он будет находится в группе “Стили”, которая расположена во вкладе “Главная”. Если он не будет отображаться непосредственно на панели управления программы, разверните диалоговое окно “Стили” и найдите его там по названию, которое вы придумали.

Урок: Как сделать автоматическое содержание в Ворде

На этом все, теперь вы знаете, как правильно сделать заголовок в MS Word, используя шаблонный стиль, доступный в программе. Также теперь вы знаете о том, как создать свой собственный стиль оформления текста. Желаем вам успехов в дальнейшем изучении возможностей этого текстового редактора.

Мы рады, что смогли помочь Вам в решении проблемы.

Задайте свой вопрос в комментариях, подробно расписав суть проблемы. Наши специалисты постараются ответить максимально быстро.

Помогла ли вам эта статья?
Как выровнять заголовок по центру в ворде

В разделе Программное обеспечение на вопрос Как сделать заголовок по центру заданный автором Просветление лучший ответ это На верху смотрите, листочки нарисованы с полосочками посередине и по бокам, Вам нужна та что посредине

Привет! Вот подборка тем с ответами на Ваш вопрос: Как сделать заголовок по центру

Ответ от ImobilazerГде, в блокноте, ан сайте, в ворде, в экселе, на пачке яблочного сока? Нажать «Выравнивание по центру»

Ответ от НеврозЭти слова, что хочешь сделать по центру, выдели с помощью мышки. И на верху, в WORLD, там есть значки, поищи значок «сделать по центру».

Как поставить заголовок по центру в html?

По центру чего? По центру строки или по центру экрана?

По центру строки:

Можно использовать атрибут align=»center» .

Выровнять по центру экрана можно с помощью CSS ,но я так понимаю это уже другой вопрос.

Есть некое правило для выравнивания текста. Называется text-align — и с его помощью можно установить текст по центру, по ширине страницы, выровнять по левому или правому краю страницы.

Для установки по центру используют text-align:center

В коде HTML это делается например так

Каким быть заголовку — тип шрифта, его цвет и размера указывают в коде CSS

Заголовок по центру

Атрибут shape подойдет для этой цели?

Как проставить координаты прямоугольника (примера в книге не обнаружилось)?

P.S.
Есть еще несколько вопросов по html и css, можно их все задать в одной теме или каждый раз создавать разные?

Как разместить заголовок h3 по центру
есть заголовок h3 находится в диве не могу разместить его по центру. при помощи padding: 0 auto;.

Блок не стоит по центру, как сделать по центру
Всем привет, помогите нубу) Сайт получается http://1a-med.ru/ Я не как не могу сделать, чтобы.

Как выровнить резиновыь сайт по центру сайт по центру?
Здравствуйте. Как можно этот резиновый сайт выравнять по центру, чтобы при уменшении размера в.

Заголовок DataGridView по центру
Здравствуйте, возникла проблема в заголовке datagridview. В связи с задачей, нужно сделать ширину.

Похожие публикации:

  1. Как добавить анимацию на сайт html
  2. Как добавить картинку с компьютера в html
  3. Как добавить текстовое поле в html
  4. Как задать два класса в html

Адаптивное модальное окно строго по центру

Как сделать стопроцентно адаптивное модальное окно на чистом CSS, которое к тому же выводилось строго по центру, и одинаково хорошо, без видимой ломки, смотрелось на различных типах экранов пользовательских устройств?

Вопрос конечно интересный, а процесс реализации и вовсе увлекательнейший. Конечно, макет модального окна, о котором сегодня пойдёт речь, скорее резиновый, так как адаптивность, в навороченных кругах, подразумевает наличие, прописных мета-тегов для мобильных устройств, медиа-запросов в css и прочие установленные «трендованными буржуинами» и еже сними, стандартами.
К теме создания модальных окон, я возвращался много раз, описывал способы с использованием jQuery и исключительно на чистом CSS3. В представленном сегодня примере объединил некоторые концепции и получилось то, что получилось. Не стоит принимать этот метод, как руководство к действию, скорее это, рабочий материал, поиски оптимальных решений.

Смотрите живой пример, а далее разберём немного по-подробнее составляющие.

Адаптивное модальное окно на чистом CSS

Как видите, при активации, модальное окно появляется строго по центру и не меняет своего положения при изменении размеров экрана просмотра, плавно масштабируется само окно. Для абсолютного центрирования модального блока метод с применением свойства display: table-cell; , на мой взгляд, это один из самых лучших и простых способов, о котором подробно описано в статье на 456bereastreet.com. Есть у этого решения маленький недостаток — дополнительная разметка, необходимо целых ))) три элемента. В разметке Html в итоге, получаем следующую картину:

Html разметка

 

Заголовок модального окна

Текстовое содержание.

Заголовок модального окна

Текстовое содержание….

Вызывается окно ударом по ссылке, адрес которой, должен соответствовать идентификатору того или иного модального блока. Объектом для ссылки может служить практически любой элемент, в примере использовал в виде более-менее оформленной кнопки:

Базовым контейнером, в который размещаем модальный блок с содержанием, является слой затемнения, чаще всего я выношу фон в отдельный div, в данном же случае, решил объединить в единую конструкцию все элементы. Тесты показали, что всё работает нормально, только вот с реализацией закрытия окна по клику вне зоны блока(по слою затемнения), возникают трудности.

Весь макет состоит из четырёх div-контейнеров с последовательной вложенностью, под формирование которых выделены отдельные классы в css, при использовании миниатюр или видео, добавляется ещё один блок. Ключевые свойства отвечающие за центрирование окна, оставляем как есть, экспериментируйте с формированием, как самого модального блока, так и внутренних элементов:

CSS

/* слой затемнения */ .dm-overlay  position: fixed; top: 0; left: 0; background: rgba(0, 0, 0, 0.65); display: none; overflow: auto; width: 100%; height: 100%; z-index: 1000; > /* активируем слой затемнения и модальное окно */ .dm-overlay:target  display: block; /* анимация и время задержки */ -webkit-animation: fade .6s; -moz-animation: fade .6s; animation: fade .6s; > /* блочная таблица */ .dm-table  display: table; width: 100%; height: 100%; > /* ячейка блочной таблицы */ .dm-cell  display: table-cell; padding: 0 1em; vertical-align: middle; text-align: center; > /* модальный блок */ .dm-modal  display: inline-block; padding: 20px; /* максимально возможная ширина */ max-width: 50em; background: #607d8b; /* внешняя тень блока */ -webkit-box-shadow: 0px 15px 20px rgba(0, 0, 0, 0.22), 0px 19px 60px rgba(0, 0, 0, 0.3); -moz-box-shadow: 0px 15px 20px rgba(0, 0, 0, 0.22), 0px 19px 60px rgba(0, 0, 0, 0.3); box-shadow: 0px 15px 20px rgba(0, 0, 0, 0.22), 0px 19px 60px rgba(0, 0, 0, 0.3); color: #cfd8dc; text-align: left; /* анимация и время задержки */ -webkit-animation: fade .8s; -moz-animation: fade .8s; animation: fade .8s; >

Наверное, для центрирования, вместо элементов блочной таблицы table-cell , проще было бы использовать трансформацию, свойство transform с отрицательными процентными значениями, но помимо того, что метод не работает в IE8 и необходимо использование префиксов, главное, он может мешать работе других эффектов с transform, а в некоторых случаях при рендеринге размываются края блока и текст. Хотя в случае с IE8, модальные окна на чистом CSS, так и так не срабатывают.

Для определения ширины модального блока, как вы видите, я использовал единицу измерения в em и установил максимальную ширину элемента max-width , так окно видоизменяется более корректно нежели при width: %;

Никаких дополнительных js-библиотек не подключал к работе, только магия CSS3. Модальный блок и слой затемнения, до поры до времени спрятал с газ долой(со страницы), с помощью display: block; . Прикрутил простенькую анимацию через @keyframes , с помощью свойства opacity , с небольшой задержкой, происходит плавный переход модального окна и слоя затемнения в открытое состояние. У кого появится желание, можете смело поэкспериментировать, благо примеров в сети предостаточно.

/* анимация при появлении затемнения и блоков с содержанием */ @-moz-keyframes fade  from  opacity: 0; > to  opacity: 1 > > @-webkit-keyframes fade  from  opacity: 0; > to  opacity: 1 > > @keyframes fade  from  opacity: 0; > to  opacity: 1 > >

/* анимация при появлении затемнения и блоков с содержанием */ @-moz-keyframes fade < from < opacity: 0; >to < opacity: 1 >> @-webkit-keyframes fade < from < opacity: 0; >to < opacity: 1 >> @keyframes fade < from < opacity: 0; >to < opacity: 1 >>

Часто модальные окна используют для вывода, не только текстовых сообщений и различных форм, но и для демонстрации изображений, знаменитый lightbox и т.д. Так же, в купе с текстом органично смотрятся в всплывающих окошках, встроенные в текст миниатюры картинок. Постарался предусмотреть и такой вариант применения, обозначив ряд выделенных классов в CSS, содержащих свойства формирующие вывод изображений внутри окна.
Для миниатюр определил возможность размещения, как справа, так и слева от текста, с шириной в 25%, а масштабной картинке назначил ширину в width: 100%; от родительского контейнера, тем самым обеспечив возможность пропорционального изменения, при просмотре на экранах различных пользовательских устройств. О том как сделать картинки адаптивными, подробно рассказывал ранее, именно этот метод и использовал.

Адаптивные изображения в модальном окне

/* изображения в модальном окне */ .dm-modal img  width: 100%; height: auto; > /* миниатюры изображений */ .pl-left,.pl-right  width: 25%; height: auto; > .pl-right  float: right; margin: 5px 0 5px 15px; > .pl-left  float: left; margin: 5px 15px 5px 0; >

Так и не найдя корректного, всех и вся удовлетворяющего способа остановки проигрывания видео при закрытии модального окна, собранного и работающего на CSS3, всё же включил в пример и вариант всплывающего блока с адаптивным видео. Решения по выключению видеоролика не то чтобы нет, есть, но оно не совсем кошерное, многих перекрученных веб-дел мастеров, просто переворачивает от использования пустующего атрибута href=»/» в ссылке кнопки закрытия. Это и понятно, в таком случае видео останавливается посредством перезагрузки страницы, что не есть хорошо.
Видеоролики можете использовать как свои, размещённые у себя на сервере, так и с любого видеосервиса, предлагающего различные методы вставки видео на сайт через iframe, object или embed. Подробно о модальном блоке видео на css3, мы рассматривали ранее, в отдельном уроке, кому интересно, можете освежить память.

/*видео в модальном окне*/ .video  position: relative; padding-bottom: 56.25%; height: 0; overflow:hidden; > .video iframe, .video object, .video embed  position: absolute; top: 0; left: 0; width: 100%; height: 100%; >

Адаптивное видео в модальном окне

Все ключевые, функциональные элементы, используемые в формировании модального блока с содержанием, мы рассмотрели, мне остаётся показать весь код css, который получился в итоге, небольшие комментарии помогут вам разобраться что к чему и зачем:

/* Стили модального окна и содержания -------------------------------------------------------------------------------*/ /* слой затемнения */ .dm-overlay  position: fixed; top: 0; left: 0; background: rgba(0, 0, 0, 0.65); display: none; overflow: auto; width: 100%; height: 100%; z-index: 1000; > /* активируем модальное окно */ .dm-overlay:target  display: block; -webkit-animation: fade .6s; -moz-animation: fade .6s; animation: fade .6s; > /* блочная таблица */ .dm-table  display: table; width: 100%; height: 100%; > /* ячейка блочной таблицы */ .dm-cell  display: table-cell; padding: 0 1em; vertical-align: middle; text-align: center; > /* модальный блок */ .dm-modal  display: inline-block; padding: 20px; max-width: 50em; background: #607d8b; -webkit-box-shadow: 0px 15px 20px rgba(0, 0, 0, 0.22), 0px 19px 60px rgba(0, 0, 0, 0.3); -moz-box-shadow: 0px 15px 20px rgba(0, 0, 0, 0.22), 0px 19px 60px rgba(0, 0, 0, 0.3); box-shadow: 0px 15px 20px rgba(0, 0, 0, 0.22), 0px 19px 60px rgba(0, 0, 0, 0.3); color: #cfd8dc; text-align: left; > /* изображения в модальном окне */ .dm-modal img  width: 100%; height: auto; > /* миниатюры изображений */ .pl-left, .pl-right  width: 25%; height: auto; > /* миниатюра справа */ .pl-right  float: right; margin: 5px 0 5px 15px; > /* миниатюра слева */ .pl-left  float: left; margin: 5px 15px 5px 0; > /* встраиваемое видео в модальном окне */ .video  position: relative; overflow: hidden; padding-bottom: 56.25%; height: 0; > .video iframe, .video object, .video embed  position: absolute; top: 0; left: 0; width: 100%; height: 100%; > /* рисуем кнопарь закрытия */ .close  z-index: 9999; float: right; width: 30px; height: 30px; color: #cfd8dc; text-align: center; text-decoration: none; line-height: 26px; cursor: pointer; > .close:after  display: block; border: 2px solid #cfd8dc; -webkit-border-radius: 50%; -moz-border-radius: 50%; border-radius: 50%; content: 'X'; -webkit-transition: all 0.6s; -moz-transition: all 0.6s; transition: all 0.6s; -webkit-transform: scale(0.85); -moz-transform: scale(0.85); -ms-transform: scale(0.85); transform: scale(0.85); > /* кнопка закрытия при наведении */ .close:hover:after  border-color: #fff; color: #fff; -webkit-transform: scale(1); -moz-transform: scale(1); -ms-transform: scale(1); transform: scale(1); > /* варианты фонвой заливки модального блока */ .green  background: #388e3c!important; > .cyan  background: #0097a7!important; > .teal  background: #00796b!important; > /* движуха при появлении блоков с содержанием */ @-moz-keyframes fade  from  opacity: 0; > to  opacity: 1 > > @-webkit-keyframes fade  from  opacity: 0; > to  opacity: 1 > > @keyframes fade  from  opacity: 0; > to  opacity: 1 > >

На этом всё. Не буду утверждать, что всё без ошибок, тестировал во многих браузерах, про IE8 и ниже, сразу надо забыть, это что касается модального окна, центрирование и адаптивность элементов кроссбраузерные, вёрстка не едет при большом количестве текста в блоке, высота изменяемая.
Если что-то пропустил или же обнаружится ошибка, пишите в комментариях. Исходники упаковал в архив и выложил в облако на Яндекс, при возникшем вдруг желании, всегда можете их скачать.

С Уважением, Андрей .

Буду всем признателен, если поддержите проект — добавив блог в исключения AdBlock и поделитесь ссылкой на запись в своих соц-сетях:

Всего комментариев: 81

Антон : 18 марта, 2015 в 12:37 Здравствуйте!
Спасибо, классно!
Единственное замечание. Если страница большая (с вертикальной полосой прокрутки) а «кнопка», активирующая модальное окно, расположена в подвале, то при клике по ней, одновременно с открытием модального окна страница прокручивается вверх к самому началу. Можно ли сделать как-то так, что бы сама страница оставалась на месте? Ответить

driver : 18 марта, 2015 в 13:39 Здравствуйте.
В селекторе .dm-overlay замените абсолютное позиционирование на фиксированное: position: fixed; Ответить

Антон : 18 марта, 2015 в 13:56 Ура! ��
И, если можно, ещё один вопрос…
Возможно ли сделать так, что бы модальное закрывалось не только по кнопке закрытия, расположенном в нём самом, но и при клике по любому месту на странице вне границ модального окна. Ответить

Вадим : 2 апреля, 2015 в 20:34 Действительно шикарные примеры!
Перебрал массу других — эти лучшие.
Кстати, замечание в прежнем комментарии также помогли с позиционированием окна.
У меня правда не до конца правильно работает. Может подскажите как исправить.
При нажатии на ссылку, всплывает модальное окно, с требуемым изображением и текстом, все супер, но…нет кнопки закрытия окна. Таким образом закрыть его возможно только нажав в меню браузера кнопку «Вернуться обратно» (проверял в Опере, Хроме и Лисе).
Пожалуйста, подскажите как добавить кнопку закрытия окна. Двигаться дальше не могу, очень жду ответ ))) Ответить

Вадим : 6 апреля, 2015 в 12:24 разобрался:
Х Ответить

Stas : 27 апреля, 2015 в 06:05 Подскажите пожалуйста, как прописать чтобы Модальное окно открывалось при загрузке страницы Ответить

driver : 27 апреля, 2015 в 11:21 Используйте js:

В этом случае окно с идентификатором win1 будет появляться по истечению 5 секунд после загрузки страницы. ID конечно же может быть любым главное чтобы соответствовал id модального окна
Так же, кнопке «закрыть» необходимо прописать событие onclick , иначе пользователь не сможет закрыть окно:

Всё! Более подробно можете прочитать у меня же на блоге, в этой статье: Тынц Ответить

Stas : 27 апреля, 2015 в 15:51 Радуюсь как ребенок…
Спасибо Вам большое, все получилось и работает!
Как у Вас все просто и оригинально, Вы не представляете, что я у себя писал и пробовал, пока вы не подсказали.
Если не затруднит, подскажите, чтобы скролл работал под модальным окном, если это возможно.
Большое спасибо! Ответить

driver : 27 апреля, 2015 в 16:48 В селекторе .dm-overlay смените абсолютное позиционирование на фиксированное position: fixed;
Затем, у меня в демо для body прописано свойство overflow: hidden; , если вы используете такую же конструкцию, просто исключите это свойство и содержание под модальным окном будет прокручиваться. Ответить

Stas : 27 апреля, 2015 в 18:43 Еще раз спасибо, все работает Ответить

Вадим : 30 апреля, 2015 в 15:30 Не могу найти причину почему в разных модальных окнах отображается одно и тоже изображение, хотя должны быть разные. Пути ведь прописаны разные… Ответить

driver : 30 апреля, 2015 в 18:12 Смотрите в сторону идентификаторов, они должны быть разные для каждого окна id=»win1″ , id=»win2″ , id=»win3″ , и т.д. в соответствии значений href=»#win1″ , href=»#win2″ , и т.д. ссылок активирующих модальные окна. Ответить

Вадим : 1 мая, 2015 в 01:06 Ты просто Бог идентификаторов! От меня — величайшая благодарность! Крепко жму руку! Ответить

Вита : 27 мая, 2015 в 17:59 Все отлично, но у меня также…нет кнопки закрытия окна(
Не пойму что зделала не так.
Пожалуйста, подскажите как добавить кнопку закрытия окна.
Заранее спасибо. Ответить

Вита : 27 мая, 2015 в 19:07 Круто. ) получилось… Ответить

Артур : 4 июня, 2015 в 10:39 И все-таки! Как сделать, чтобы окно закрывалось при клике на темный фон? Пользователи нынче нервные — могут и ноутбук поломать. Ответить

driver : 4 июня, 2015 в 11:32 Ну, раз так всё серьёзно, то самое простое, это использовать событие onclick для div-контейнера с модальным окном:

остаётся только следить чтобы идентификатор соответствовал тому или иному окошку. Всё!
Как поведёт себя данное решение на мобильных устройствах, не проверял, так как задача была немного другая ))). Ответить

Вячеслав : 9 июня, 2015 в 16:57 Приветствую!
Подскажите, что делаю не так, скопировал так как указано в материале выше.
Задача: при нажатии на ссылку должно появляться модальное окно на весь экран с текстом.
Результат: окно с необходимым содержимым отображается постоянно, без «Х» для закрытия.
Заранее благодарю! Ответить

driver : 9 июня, 2015 в 20:43 Вячеслав, доброго времени суток!
В статье всё разложено по полочкам, не один раз уже объяснял дополнительно, весь код с пояснениями, даже расписал в комментах вариант появления окна при загрузке сайта, хотя статья изначально совсем о другом))).
Мне трудно разглядеть, что вы делаете с исходниками, ещё труднее уловить полёт вашей фантазии.
Кидайте результаты своих экспериментов (исходники) мне на мыло, или же воспользуйтесь Jsfiddle, и я вам обязательно помогу. Ответить

Вячеслав : 9 июня, 2015 в 21:27 Благодарю за такую оперативность! (like)
насколько связанно это с решением моего вопроса даже не представляю, вы как Профи может объясните:
Прочитав в очередной раз комменты, попробовал это X И о Чудо, все заработало )
p.s. Блог у Вас правильный, много чего почерпнул, думаю буду сюда захаживать в гости! Ответить

driver : 9 июня, 2015 в 21:50 Ответить
Вячеслав : 9 июня, 2015 в 22:21 Ответить
Костя : 20 октября, 2015 в 09:45 Замечательное решение. Просто нет слов. Ответить

Дмитрий : 20 декабря, 2015 в 23:18 Помогите пожалуйста! У меня есть кино сайт на движке DLE 10.2 настроен все работает но нету вкладки Трейлеры так вот я хочу сделать кнопку (Просмотреть трейлер) что бы когда на нее нажимали всплывало окно и видео с ютуба воспроизводилось. Но это не все мне нужно что бы было все просто то есть в создоном дополнительном поле мне нужно было бы вставить только ссылку на трейлер с ютуба и все. Я перепробовал кучу скриптов и модулей но они либо нарушали структуру сайта либо не работали. Не могли бы вы мне объяснить подробно как мне осуществить мою идею?? Ответить

Андрей : 25 декабря, 2015 в 17:22 Могу помочь установить на ДЛЕ Ответить

Дмитрий : 26 декабря, 2015 в 16:05 Было бы здорово! Вот мой скайп ask.3d или mail ask3d@bk.ru буду ждать Ответить

cruxpux : 30 декабря, 2015 в 13:29 Добрый день!
Вставил туда галерею адаптивную
не работает нормально ваша форма и галерея
подскажите что нуно делать для вставки туда различных плагинов Ответить

Ольга : 11 февраля, 2016 в 21:36 Добрый день, в примере у Вас на сайте, четвертое окно с видео, при закрытии окна — видео перестает воспроизводится. В исходниках, которые предлагается скачать, при закрытии окна видео продолжает воспроизводится. Что нужно добавить, чтобы корректно работало? Ответить

driver : 12 февраля, 2016 в 00:17 Вечер добрый.
В примере ссылка кнопки закрытия прописана с пустым адресом, что вызывает перезагрузку страницы и соответственно остановку видео, в исходниках в адресе прописано #close , окно закрывается, но видео продолжает играть
По настоящему валидного решения остановки видео средствами css, без js нет, приходится искать варианты. Например в других своих работах по модальным окнам на css3, нередко использую в адрес страницы где прописано модальное окно с видео:

Как видите, в адресе ссылки указана страница где прописано модальное окно, что так же вызывает перезагрузку страницы, такой подход более-менее актуален если окно позиционируется фиксировано. Ответить

Ольга : 12 февраля, 2016 в 10:21 Да, поправила код, все работает, но если видеогалерея большая, как у меня, перезагрузка страницы при просмотре каждого видео, наверно, не очень хорошо. Нет ли возможности добавить маленький скрипт для закрытия окна? Я понимаю, что чистый CSS, но может быть как вариант? Ответить

Виктор : 17 марта, 2016 в 14:09 У вас в демке код прекрасен, но при использовании на своем сайте — возникает куча проблем. При открытии/закрытии окнв к ссылке добавляется #id и происходит скрол вверх страницы. Еще scc стили добавляют тегу body overflow:hidden, из за чего сайт не скролится и отображается только в первом экране, еще body добавляется line-height и что то еще, после чего дизайн просто едет. Ответить

Виктор : 17 марта, 2016 в 14:27 Почитал коменты, разобрался. Спасибо за отличное решение. Ответить

Алексей : 8 июня, 2016 в 10:14 Я так и не понял из коментов. Как этот вариант модального окна можно использовать на сайте, когда вы добавляете
html,
body overflow: hidden;
>
. Ответить

driver : 8 июня, 2016 в 16:57 Понятно, что при overflow: hidden; для body, будет проблематично)) Не нужно смотреть на весь фарш демо-страницы, стили базовых элементов (html,body) исключительно для демо, просто не используйте это свойство, или же пропишите значение auto , .dm-overlay зафиксируйте. Про скролинг и варианты позиционирования, отвечал ранее в комментах. Ответить

Алексей : 9 июня, 2016 в 11:24 Мне кажется нужно сразу писать так
.dm-overlay position:fixed;
z-index:1000;
overflow:auto;
top: 0;
left: 0;
display: none;
overflow: auto;
width: 100%;
height: 100%;
background: rgba (0, 0, 0, 0.65);
>
Это подойдет для 99% пользователей. Ответить

driver : 9 июня, 2016 в 12:28 Алексей, полностью с вами согласен.
Спасибо за дополнение. Ответить
Александр : 20 июля, 2016 в 00:46 В ie работать не будет… Ответить

driver : 20 июля, 2016 в 01:00 Спасибо что просветили, а то всё гадаю будет или не будет))) В 10,11 и Edge, всё работает прекрасно, в 9-й версии отсутствует лишь анимация, ну а на 8 и ниже пора бы уже подзабить… Ответить

Александр : 19 ноября, 2016 в 21:17 Добрый вечер!
Редактирую ваш пример для использования, выбрал его именно за отсутствие скрипта. Ваш пример очень удачный ��
Но столкнулся с проблемой, в окне пытаюсь вывести iframe со своей страницей. На странице ссылки на похожие записи. При клике по ссылке пользователь переходит на 2 страницу target=”_blank. Не подскажите, как закрыть попап окно через время на 1 странице?
Спасибо! Ответить

Hellion : 4 июля, 2017 в 16:52 Добрый день. Подскажите пожалуйста. Я из комментариев взял метод который скрывает модальное окно если нажать в любом месте а не только на крестик. Проблема в том что модальное окно закрывается даже если нажать в нем самом. В моем случае в модальном окне форма. Нажимаю на input что бы ввести телефон и модальное окно пропадает((( Подскажите пожалуйста как исправить данную проблему? Заранее крайне благодарен за ответ. Ответить

gmenjk95 : 10 августа, 2017 в 02:05 Можно сделать несколько иначе
Внутри блока dm-modal рядом с блоком wrap вставляешь И для него добавляешь стили
.close_1 position: absolute;
width: 100%;
height: 100%;
top: 0;
display: block;
left: 0;
> Ответить

gmenjk95 : 10 августа, 2017 в 02:09 Вставляешь * Ответить
gmenjk95 : 10 августа, 2017 в 02:11 Ответить

Роман : 3 сентября, 2017 в 12:10 Здравствуйте,
Использовал Ваши исходники для сайта, всё отлично, только после заполнения модальных окон своей информацией, после обновления страницы происходит видимая загрузка информации данных окон, и только после этого всё работает нормально…
Я пока что новичок, подскажите, возможно это можно убрать js, а именно Ajax? Тогда уберу позже, когда изучу js))) Ответить

driver : 3 сентября, 2017 в 13:35 Здравствуйте.
В моей демке, такого косяка не просматривается, по крайней мере, я не замечал.
Могу предположить, что баг связан с анимацией. Чтобы проверить исключите свойства анимации из селектора .dm-overlay:target , просто закомментируйте:
/* -webkit-animation: fade .6s;
-moz-animation: fade .6s;
animation: fade .6s;
*/
Хотя мало вероятно, что дело именно в анимации, если так, то будем глубже копать. Ответить

Роман : 3 сентября, 2017 в 17:47 Гораздо лучше)) Спасибо огромное)))
Правда блики идут небольшие)) Может ещё что-нибудь можно сделать? Ответить

Роман : 3 сентября, 2017 в 19:28 Ответить

Ирина Чичиканова : 31 декабря, 2017 в 14:08 Здравствуйте, Андрей! Просто счастье, что я нашла Ваш сайт, три дня билась с модальным окном, и спасение нашла только тут:) А вопрос был серьезный, могла подвести людей. Огромное спасибо Вам за множество полезностей!
С Наступающим Новым Годом! Я желаю Вам счастья! Ответить

Syo4 : 1 августа, 2018 в 06:59 Это лучшее из того, что я посмотрел в Топе Яндекса по выдаче «адаптивные модальные окна». Особый респект за комменты в CSS, поскольку чаще всего именно там непонятно. Побольше бы таких, как Вы и мир станет бесплатным))) Ответить

Руслан : 15 сентября, 2018 в 12:21 То, что доктор прописал! Спасибо за труды! Ответить

driver : 2 июня, 2019 в 00:32 Используйте Закрыть например, главное не одиночный слеш # , с точки зрения валидности не совсем кошерно конечно, но это уже частности.
Посмотрите реализацию модальных окон на скрытых чекбоксах, на мой взгляд более гибкое решение.
Данная же статья, больше направлена на стиль оформления и позиционирование модального окна, что явно следует из заголовка, ну, а принципы работы вторичны. Ответить

Бархударов : 2 июня, 2019 в 07:28 Спасибо за совет.
Утро вечера мудренее!
Решил вопрос, с помощью ссылки внутри документа. Ответить

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *