анимация открытия окна
как сделать плавное появления окна? (простите за костыли, я только учусь)
.my_modal {
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
background: rgba(0, 0, 0, 0.5);
z-index: 1050;
display: none;
margin: 0;
padding: 0;
}
.my_modal:target {
display: block;
overflow-y: auto;
}
.my_modal-dialog {
position: relative;
width: auto;
margin: 10px;
}
@media (min-width:576px) {
.my_modal-dialog {
max-width: 460px;
margin: 30px auto;
}
}
.my_modal-content {
position: relative;
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-webkit-flex-direction: column;
-ms-flex-direction: column;
flex-direction: column;
background-color: #fff;
-webkit-background-clip: padding-box;
background-clip: padding-box;
border: 1px solid rgba(0, 0, 0, .2);
border-radius: 6px;
outline: 0;
}
@media (min-width:768px) {
.my_modal-content {
-webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, .5);
box-shadow: 0 5px 15px rgba(0, 0, 0, .5);
}
}
.my_modal-header {
display: block;
padding: 14px 14px 4px;
}
.my_modal-title {
color: black;
margin-top: 0;
margin-bottom: 0;
line-height: 1.5;
font-size: 1.25rem;
font-weight: 500;
border-bottom: 1px solid #d4d4d4;
}
.close {
padding: 1px 5px 0;
border: 1px solid #000;
border-radius: 50%;
font-family: sans-serif;
font-size: 24px;
font-weight: 700;
line-height: 1;
color: #000;
text-shadow: 0 1px 0 #fff;
opacity: .5;
text-decoration: none;
top: 4px;
right: 4px;
position: absolute;
}
.close:focus,
.close:hover {
color: #000;
text-decoration: none;
cursor: pointer;
opacity: .75;
}
.my_modal-body {
position: relative;
-webkit-box-flex: 1;
-webkit-flex: 1 1 auto;
-ms-flex: 1 1 auto;
flex: 1 1 auto;
padding: 15px;
overflow: auto;
}
div.knopka a {
text-decoration: none;
color: white;
padding: 20px 30px;
border-radius: 30px;
text-transform: uppercase;
letter-spacing: 2px;
background-image: linear-gradient(to right, #512DA8 0%, #6F3DE6 51%, #512DA8 100%);
background-size: 200% auto;
box-shadow: 0 0 20px rgba(0, 0, 0, .1);
transition: .5s;
}
div.knopka a:hover {
background-position: right center;
}
<div class="knopka" style="text-align: center">
<a class="kupitknopka" href="#modal_open">Купить</a>
</div>
<div id="modal_open" class="my_modal">
<div class="my_modal-dialog">
<div class="my_modal-content">
<div class="my_modal-header">
<p class="my_modal-title">Как купить вип:</p>
<a href="#" title="Закрыть модальное окно" class="close">×</a>
</div>
<div class="my_modal-body">
Стоимость - 50р месяц.
<br> Тинькофф - 2200700431974418
<br> Киви - qiwi.com/n/vkurianov
<br>
<span style="color:red">В комментариях обязательно укажите свой стим профиль!!!</span>
</div>
</div>
</div>
</div>
Ответы (1 шт):
Автор решения: Prog
→ Ссылка
.my_modal {
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
background: rgba(0, 0, 0, 0.5);
z-index: 1050;
display: none;
margin: 0;
padding: 0;
}
.my_modal:target {
display: block;
overflow-y: auto;
}
.my_modal-dialog {
position: relative;
width: auto;
margin: 10px;
}
@media (min-width:576px) {
.my_modal-dialog {
max-width: 460px;
margin: 30px auto;
}
}
.my_modal-content {
position: relative;
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-webkit-flex-direction: column;
-ms-flex-direction: column;
flex-direction: column;
background-color: #fff;
-webkit-background-clip: padding-box;
background-clip: padding-box;
border: 1px solid rgba(0, 0, 0, .2);
border-radius: 6px;
outline: 0;
}
@media (min-width:768px) {
.my_modal-content {
-webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, .5);
box-shadow: 0 5px 15px rgba(0, 0, 0, .5);
}
}
.my_modal-header {
display: block;
padding: 14px 14px 4px;
}
.my_modal-title {
color: black;
margin-top: 0;
margin-bottom: 0;
line-height: 1.5;
font-size: 1.25rem;
font-weight: 500;
border-bottom: 1px solid #d4d4d4;
}
.close {
padding: 1px 5px 0;
border: 1px solid #000;
border-radius: 50%;
font-family: sans-serif;
font-size: 24px;
font-weight: 700;
line-height: 1;
color: #000;
text-shadow: 0 1px 0 #fff;
opacity: .5;
text-decoration: none;
top: 4px;
right: 4px;
position: absolute;
}
.close:focus,
.close:hover {
color: #000;
text-decoration: none;
cursor: pointer;
opacity: .75;
}
.my_modal-body {
position: relative;
-webkit-box-flex: 1;
-webkit-flex: 1 1 auto;
-ms-flex: 1 1 auto;
flex: 1 1 auto;
padding: 15px;
overflow: auto;
}
div.knopka a {
text-decoration: none;
color: white;
padding: 20px 30px;
border-radius: 30px;
text-transform: uppercase;
letter-spacing: 2px;
background-image: linear-gradient(to right, #512DA8 0%, #6F3DE6 51%, #512DA8 100%);
background-size: 200% auto;
box-shadow: 0 0 20px rgba(0, 0, 0, .1);
transition: .5s;
}
div.knopka a:hover {
background-position: right center;
}
#modal_open {
opacity: 0; animation: ani 1s forwards; }
@keyframes ani {
0% {opacity: 0;}
100% {opacity: 1;}
}
<div class="knopka" style="text-align: center">
<a class="kupitknopka" href="#modal_open">Купить</a>
</div>
<div id="modal_open" class="my_modal">
<div class="my_modal-dialog">
<div class="my_modal-content">
<div class="my_modal-header">
<p class="my_modal-title">Как купить вип:</p>
<a href="#" title="Закрыть модальное окно" class="close">×</a>
</div>
<div class="my_modal-body">
Стоимость - 50р месяц.
<br> Тинькофф - 2200700431974418
<br> Киви - qiwi.com/n/vkurianov
<br>
<span style="color:red">В комментариях обязательно укажите свой стим профиль!!!</span>
</div>
</div>
</div>
</div>