Автоматически загружаемый popup после загрузки страницы (часть #1)

Автоматически загружаемый popup после загрузки страницы (часть #1)

Автоматически загружаемый popup после загрузки страницы (часть #1)

Предположим у бизнес-сайта есть специальное предложение (подарок в виде скидки), которое посетитель должен увидеть через несколько секунд после загрузки страницы. Такой прием максимально фокусирует внимание пользователя к предложению. Как же реализовать автоматически загружаемый popup на сайте, вы узнаете из этого урока.

HTML разметка

Создадим popup-контейнер для текста и изображения. В дальнейшем стилизуем все созданные классы, чтобы наш popup выглядел более привлекательно.


<div class="popup">
  <div class="contentBox">
    <div class="close"></div>
    <div class="imgBx">
      <img src="gift.png">
    </div>
    <div class="content">
      <div>
        <h3>Special Offer</h3>
        <h2>70<sup>%</sup><span> Off</span></h2>
        <p>Lorem ipsum dolor sit amet consectetur adipisicing elit.</p>
        <a href="#">Get The Deal</a>
      </div>
    </div>
  </div>
</div>

Автоматически загружаемый popup после загрузки страницы (часть #1)

CSS код

Расположим popup в центре страницы.


@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@200;300;400;500;600;700;800;900&display=swap');
*{
    margin: 0; / * обнуление отступов * /
    padding: 0; / * обнуление полей * /
    box-sizing: border-box; / * ничто не влияет на заданные размеры * /
    font-family: 'Poppins', sans-serif; / * семейство шрифтов * /
}
body{
    min-height: 100vh; / * на всю высоту видимой области экрана * /
    background: #b1e7a1; / * цвет фона страницы * /
}
.popup{
    position: fixed; / * фиксированная позиция popup * /
    top: 50%; / * центрирование * /
    left: 50%; / * центрирование * /
    transform: translate(-50%,-50%); / * центрирование * /
    display: block; / * показывать popup * /
}

Внутри popup нарисуем белый прямоугольный блок с закругленными краями.


.contentBox{
    position: relative; / * относительное позиционирование * /
    width: 600px; / * ширина блока * /
    height: 400px; / * высота блока * /
    background: #fff; / * фон блока * /
    border-radius: 20px; / * скругление углов * /
    display: flex; / * гибкий контейнер * /
    box-shadow: 0 5px 15px rgba(0,0,0,0.1); / * создание легкой тени * /
}
.popup .imgBx{
    position: relative;
    width: 300px;
    height: 400px;
    display: flex;
    justify-content: center; / * контент в центре по горизонтали * /
    align-items: center; / * контент в центре по вертикали * /
}

Автоматически загружаемый popup после загрузки страницы (часть #1)

Изображение слишком большое, ограничим его с помощью свойства max-width и разместим на фоне окружности.


.popup .imgBx:before{ / * псевдоэлемент круг * /
    content: '';
    position: absolute; / * абсолютное позиционирование * /
    width: 250px; / * ширина круга * /
    height: 250px; / * высота круга * /
    background: #e7ffe0; / * фон у круга * /
    border-radius: 50%; / * скругление углов * /
}

.popup .imgBx img{
    position: relative;
    max-width: 250px; / * максимальная ширина у картинки * /
    z-index: 1; / * картинка сверху круга * /
}

Автоматически загружаемый popup после загрузки страницы (часть #1)

Стилизуем весь остальной контент внутри popup окна.


.popup .content{
    position: relative;
    width: 300px;
    height: 400px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.popup .content h3{
    color: #333;
    line-height: 1em;
    font-size: 2em;
    font-weight: 300;
}
.popup .content h2{
    font-size: 4em;
    line-height: 1em;
    color: #333;
    color: #ff4d54;
}
.popup .content h2 span{
    color: #333;
    font-size: 0.75em;
    text-transform: uppercase;
}
.popup .content p{
    font-weight: 300;
}
.popup .content a{
    display: inline-block;
    padding: 10px 20px;
    background: #ff4d54;
    color: #fff;
    margin-top: 15px;
    text-decoration: none;
    border-radius: 10px;
}

Автоматически загружаемый popup после загрузки страницы (часть #1)

Источник

НЕТ КОММЕНТАРИЕВ

Оставить комментарий

девятнадцать + тринадцать =