Плавное появление блока css при загрузке страницы
Появление блока, css анимация появления блока, css эффекты появления блоков . Рассмотрим несколько случаев появление блока, для этого понадобятся живые примеры.
Плавное появление блока
- Плавное появление блока из-за края монитора, окна.
- Плавное появление блока.
- Локальное плавное появление блока.
Плавное появление блока из-за края монитора, окна.
Сразу приведу ссылку на отдельную страницу, где и продемонстрируем, что будем делать:
Основной каркас для плавно появляющегося блока, блоков
У нас будет три строки, которые будет поваляться разнонаправленно!
Блок
Блок абзаца "<p>", будет плавно появляться справа.
<div class="main">
<div class="center">
<h1>Заголовок<span>Dwweb.ru</span></h1>
<p>Текст приветствия</p>
<div class="begin"><a href="ссылка">Текст ссылки!</a></div>
</div>
</div>
У нас есть основной блок. Который с позиционирован абсолютно(position: absolute;), вы его положения видите после загрузки страницы.
Нас прежде всего интересует:
div.main .center {
position: absolute;
top: 37%;
left: 0;
right: 0;
text-align: center;
text-transform: uppercase;
z-index: 15;
}
Механизм работы плавно появляющегося блока:
У нас есть два блока( "h1" и ".begin"), для них будут прописаны свойство появление слева.
И блок между ними, который будет поваляться слева это абзац "<p>".
Для блоков слева выставляем
Для блоков справа :
Позиция relative :
Анимация
keyframes для левого блока:
keyframes для правого го блока:
Соберем весь CSS:
div.main .center h1 {
color: #fff;
font-size: calc(16px + 1.2vw);
font-weight: 700;
margin-bottom: 30px;
position: relative;
animation: showLeft 1s;
z-index: 1;
}
@keyframes showLeft {
from {left:-100%;}
to {left:0;}
}
@keyframes showRight {
from {right:-100%;}
to {right:0;}
}
Про остальные стили не вижу никакого смысла писать...
Результат плавного появления блока на примере + скачать
Плавное появление блока.
Давайте сразу приведем пару ссылок, что будем делать и где скачать:
В данном случае картинка, как иллюстрация для заполнения внутренней площади блока... что-то же должно показываться. картинка в данном случае будет выступать заменителем блока!
В общем то, код довольно простой. Просто я тут перебирал старые страницы и смотрю, а вот такого варианта на данной странице нет - думаю не порядок, такой простой вариант медленного появления блока должен здесь быть :
Убираем все отступы наружные и внутренние :
Скроем колесо прокрутки, если она вдруг появится...
Позиционируем, растягиваем, заполняем.
position: absolute;
background: url(onload.jpg) center no-repeat;
width: 100%;
height: 100%;
background-size: cover;
/*Устанавливаем время и имя анимации*/
-webkit-animation-duration: 5s;
animation-duration: 5s;
-webkit-animation-fill-mode: both;
animation-fill-mode: both;
-webkit-animation-name: fadeIn;
animation-name: fadeIn;
}
Добавляем keyframes, от полной невидимости(opacity: 0;) до полной видимости(opacity: 1;)
0% {opacity: 0;}
100% {opacity: 1;}
}
@keyframes fadeIn {
0% {opacity: 0;}
100% {opacity: 1;}
}
Не забываем по блок, который будет у нас появляться
<div id="img"></div>
Собираем все вместе и получаем блок появляющийся постепенно:
Локальное плавное появление блока.
Если вам нужен простой код плавного появления блока, то следующий пункт про такой блок.
Как сделать плавное появление блока css
Для третьего варианта применена абсолютно та же схема, что и в предыдущем пункте, блок будет появляться от невидимого состояния в видимое…
Здесь по-моему и объяснять нечего… код намного меньше и проще!
}
@keyframes show {
from {opacity: 0;} to {opacity: 1;}}