feat: added faq

gh-pages
Aliaksei Karzhou 1 year ago
parent 90709707fc
commit 5799ef038b
  1. 152
      assets/css/index.css
  2. 21
      assets/js/faq.js
  3. 1
      assets/js/main.js
  4. 130
      assets/scss/_l-faq.scss
  5. 16
      assets/scss/_l-team.scss
  6. 1
      assets/scss/index.scss
  7. 98
      index.html

@ -2380,6 +2380,12 @@ h3 {
border-radius: 8px 30px; border-radius: 8px 30px;
background-color: #ffffff; background-color: #ffffff;
} }
@media (max-width: 768px) {
.team__modal-body {
max-height: calc(100vh - 80px);
padding: 20px;
}
}
.team__modal-body::before { .team__modal-body::before {
content: ""; content: "";
position: absolute; position: absolute;
@ -2392,12 +2398,25 @@ h3 {
background: url(../img/icons/close.svg) center no-repeat; background: url(../img/icons/close.svg) center no-repeat;
cursor: pointer; cursor: pointer;
} }
@media (max-width: 768px) {
.team__modal-body::before {
top: -34px;
left: 50%;
right: auto;
transform: translateX(-50%);
}
}
.team__modal-content { .team__modal-content {
max-height: calc(100vh - 180px); max-height: calc(100vh - 180px);
padding-right: 4px; padding-right: 4px;
overflow: auto; overflow: auto;
/* Handle */ /* Handle */
} }
@media (max-width: 768px) {
.team__modal-content {
max-height: calc(100vh - 120px);
}
}
.team__modal-content::-webkit-scrollbar { .team__modal-content::-webkit-scrollbar {
width: 4px; width: 4px;
} }
@ -2416,4 +2435,137 @@ h3 {
align-items: center; align-items: center;
gap: 24px; gap: 24px;
margin-top: 40px; margin-top: 40px;
}
.faq {
margin: 90px 0 100px;
overflow: hidden;
}
@media (max-width: 768px) {
.faq {
margin: 90px 0 60px;
}
}
.faq__title {
margin: 18px 0 25px;
}
@media (max-width: 768px) {
.faq__title {
margin: 21px 0;
}
}
.faq__content {
display: flex;
flex-wrap: wrap;
gap: 36px;
}
@media (max-width: 768px) {
.faq__content {
gap: 18px;
}
}
.faq__block {
flex: 0 0 calc(50% - 18px);
display: flex;
flex-direction: column;
gap: 32px;
}
@media (max-width: 768px) {
.faq__block {
flex: 1 1 100%;
gap: 18px;
}
}
.faq__item {
padding: 20px 26px;
color: #ffffff;
border-radius: 16px;
background-color: #ffffff;
}
@media (max-width: 768px) {
.faq__item {
padding: 28px 24px;
border-radius: 8px;
}
}
@media (max-width: 576px) {
.faq__item {
padding: 24px 20px;
}
}
.faq__item-question {
display: flex;
justify-content: space-between;
align-items: center;
gap: 12px;
font-weight: 500;
font-size: 21px;
line-height: 146%;
color: #2d2d2d;
}
@media (max-width: 768px) {
.faq__item-question {
font-size: 18px;
}
}
@media (max-width: 576px) {
.faq__item-question {
font-size: 16px;
}
}
.faq__item-question::after {
content: "+";
flex: 0 0 auto;
display: flex;
align-items: center;
justify-content: center;
width: 32px;
height: 32px;
font-weight: 500;
font-size: 28px;
line-height: 100%;
color: #ffffff;
border-radius: 32px;
background-color: #609eff;
transition: transform ease-in-out 0.14s;
}
@media (max-width: 768px) {
.faq__item-question::after {
width: 30px;
height: 30px;
font-size: 24px;
}
}
@media (max-width: 576px) {
.faq__item-question::after {
width: 26px;
height: 26px;
font-size: 20px;
}
}
.faq__item.active .faq__item-question::after {
transform: rotate(-45deg);
}
.faq__item-answer {
display: flex;
flex-direction: column;
max-height: 0;
box-sizing: border-box;
overflow: hidden;
font-weight: 300;
font-size: 16px;
line-height: 148%;
color: #878787;
transition: max-height 0.2s ease-out;
}
@media (max-width: 768px) {
.faq__item-answer {
font-size: 14px;
}
}
.faq__item-answer::before {
content: "";
flex: 0 0 auto;
display: block;
height: 20px;
} }

@ -0,0 +1,21 @@
const faqItems = document.querySelectorAll('.faq__item');
faqItems.forEach((faqItem) => {
faqItem.addEventListener('click', (event) => {
event.currentTarget.classList.toggle('active');
const panel = event.currentTarget.querySelector('.faq__item-answer');
const parentFaqItems = document.querySelectorAll('.faq__item');
parentFaqItems.forEach((item) => {
if (item !== event.currentTarget && item.classList.contains('active')) {
item.classList.remove('active');
const itemPanel = item.querySelector('.faq__item-answer');
itemPanel.style.maxHeight = null;
}
});
if (panel.style.maxHeight) {
panel.style.maxHeight = null;
} else {
panel.style.maxHeight = panel.scrollHeight + 'px';
}
});
});

@ -1,3 +1,4 @@
import './sliders.js'; import './sliders.js';
import './step-by-step.js'; import './step-by-step.js';
import './team.js'; import './team.js';
import './faq.js';

@ -0,0 +1,130 @@
.faq {
margin: 90px 0 100px;
overflow: hidden;
@include tablet {
margin: 90px 0 60px;
}
&__title {
margin: 18px 0 25px;
@include tablet {
margin: 21px 0;
}
}
&__content {
display: flex;
flex-wrap: wrap;
gap: 36px;
@include tablet {
gap: 18px;
}
}
&__block {
flex: 0 0 calc(50% - 18px);
display: flex;
flex-direction: column;
gap: 32px;
@include tablet {
flex: 1 1 100%;
gap: 18px;
}
}
&__item {
padding: 20px 26px;
color: $white;
border-radius: 16px;
background-color: $white;
@include tablet {
padding: 28px 24px;
border-radius: 8px;
}
@include mobile {
padding: 24px 20px;
}
&-question {
display: flex;
justify-content: space-between;
align-items: center;
gap: 12px;
font-weight: 500;
font-size: 21px;
line-height: 146%;
color: $black;
@include tablet {
font-size: 18px;
}
@include mobile {
font-size: 16px;
}
&::after {
content: '+';
flex: 0 0 auto;
display: flex;
align-items: center;
justify-content: center;
width: 32px;
height: 32px;
font-weight: 500;
font-size: 28px;
line-height: 100%;
color: $white;
border-radius: 32px;
background-color: $blue;
transition: transform ease-in-out 0.14s;
@include tablet {
width: 30px;
height: 30px;
font-size: 24px;
}
@include mobile {
width: 26px;
height: 26px;
font-size: 20px;
}
}
}
&.active &-question::after {
transform: rotate(-45deg);
}
&-answer {
display: flex;
flex-direction: column;
max-height: 0;
box-sizing: border-box;
overflow: hidden;
font-weight: 300;
font-size: 16px;
line-height: 148%;
color: $grey;
transition: max-height 0.2s ease-out;
@include tablet {
font-size: 14px;
}
&::before {
content: '';
flex: 0 0 auto;
display: block;
height: 20px;
}
}
}
}

@ -147,6 +147,11 @@
border-radius: 8px 30px; border-radius: 8px 30px;
background-color: $white; background-color: $white;
@include tablet {
max-height: calc(100vh - 80px);
padding: 20px;
}
&::before { &::before {
content: ''; content: '';
position: absolute; position: absolute;
@ -158,6 +163,13 @@
height: 28px; height: 28px;
background: url(../img/icons/close.svg) center no-repeat; background: url(../img/icons/close.svg) center no-repeat;
cursor: pointer; cursor: pointer;
@include tablet {
top: -34px;
left: 50%;
right: auto;
transform: translateX(-50%);
}
} }
} }
@ -166,6 +178,10 @@
padding-right: 4px; padding-right: 4px;
overflow: auto; overflow: auto;
@include tablet {
max-height: calc(100vh - 120px);
}
&::-webkit-scrollbar { &::-webkit-scrollbar {
width: 4px; width: 4px;
} }

@ -29,3 +29,4 @@
@import './l-socialization'; @import './l-socialization';
@import './l-price'; @import './l-price';
@import './l-team'; @import './l-team';
@import './l-faq';

@ -1718,6 +1718,104 @@
</div> </div>
</div> </div>
</section> </section>
<section class="faq">
<div class="container">
<div class="tag">FAQ</div>
<h2 class="faq__title">
Ответы на <br />
<span>часто задаваемые вопросы</span>
</h2>
<div class="faq__content">
<div class="faq__block">
<div class="faq__item">
<div class="faq__item-question">Чем будет заниматься реабилитант?</div>
<div class="faq__item-answer">
Первые 3 месяца встречи не рекомендуются, так как это может навредить
эмоциональному состоянию резидента. Но по истечению 3 месяцев возможны встречи по
воскресеньям с соглашения куратора и специалистов центра
</div>
</div>
<div class="faq__item">
<div class="faq__item-question">Можно ли пользоваться телефоном, ноутбуком?</div>
<div class="faq__item-answer">
Первые 3 месяца встречи не рекомендуются, так как это может навредить
эмоциональному состоянию резидента. Но по истечению 3 месяцев возможны встречи по
воскресеньям с соглашения куратора и специалистов центра
</div>
</div>
<div class="faq__item">
<div class="faq__item-question">А что если будут жестоко обращаться?</div>
<div class="faq__item-answer">
Первые 3 месяца встречи не рекомендуются, так как это может навредить
эмоциональному состоянию резидента. Но по истечению 3 месяцев возможны встречи по
воскресеньям с соглашения куратора и специалистов центра
</div>
</div>
<div class="faq__item">
<div class="faq__item-question">Может ли участник самостоятельно уйти?</div>
<div class="faq__item-answer">
Первые 3 месяца встречи не рекомендуются, так как это может навредить
эмоциональному состоянию резидента. Но по истечению 3 месяцев возможны встречи по
воскресеньям с соглашения куратора и специалистов центра
</div>
</div>
<div class="faq__item">
<div class="faq__item-question">Что нужно с собой брать в центр?</div>
<div class="faq__item-answer">
Первые 3 месяца встречи не рекомендуются, так как это может навредить
эмоциональному состоянию резидента. Но по истечению 3 месяцев возможны встречи по
воскресеньям с соглашения куратора и специалистов центра
</div>
</div>
</div>
<div class="faq__block">
<div class="faq__item">
<div class="faq__item-question">Сколько времени нужно для реабилитации?</div>
<div class="faq__item-answer">
Первые 3 месяца встречи не рекомендуются, так как это может навредить
эмоциональному состоянию резидента. Но по истечению 3 месяцев возможны встречи по
воскресеньям с соглашения куратора и специалистов центра
</div>
</div>
<div class="faq__item">
<div class="faq__item-question">А если что-то случится? Есть ли врачи?</div>
<div class="faq__item-answer">
Первые 3 месяца встречи не рекомендуются, так как это может навредить
эмоциональному состоянию резидента. Но по истечению 3 месяцев возможны встречи по
воскресеньям с соглашения куратора и специалистов центра
</div>
</div>
<div class="faq__item">
<div class="faq__item-question">Можно ли посещать реабилитанта?</div>
<div class="faq__item-answer">
Первые 3 месяца встречи не рекомендуются, так как это может навредить
эмоциональному состоянию резидента. Но по истечению 3 месяцев возможны встречи по
воскресеньям с соглашения куратора и специалистов центра
</div>
</div>
<div class="faq__item">
<div class="faq__item-question">Есть ли доступ к запрещенным веществам?</div>
<div class="faq__item-answer">
Первые 3 месяца встречи не рекомендуются, так как это может навредить
эмоциональному состоянию резидента. Но по истечению 3 месяцев возможны встречи по
воскресеньям с соглашения куратора и специалистов центра
</div>
</div>
</div>
</div>
</div>
</section>
</main> </main>
<script src="./assets/js/swiper-bundle.min.js" defer></script> <script src="./assets/js/swiper-bundle.min.js" defer></script>

Loading…
Cancel
Save