Задать вопрос директору
Telegram
VK
Звонок

Блок «Вопрос-ответ» для сайта ремонта

Аккордеон на восемь вопросов с плавным раскрытием. Размечен так, чтобы поисковик мог показать вопросы прямо в выдаче.

Живое демо — блок работает прямо здесь

Код блока

<section class="vbvor">
  <div class="vbvor-wrap">
    <div class="vbvor-head">
      <h2 class="vbvor-h2">Что спрашивают перед ремонтом</h2>
      <p class="vbvor-lead">Собрали вопросы, которые задают на первом звонке. Если своего не нашли — напишите, ответим в течение дня.</p>
    </div>

    <ul class="vbvor-list">
      <li class="vbvor-item">
        <h3><button type="button" class="vbvor-q" aria-expanded="false">Смета может вырасти в процессе работ?<span class="vbvor-ico" aria-hidden="true"></span></button></h3>
        <div class="vbvor-a"><div><p>Смета фиксируется в договоре и не меняется, пока не меняется объём работ. Если вы решили добавить перепланировку или заменить материал на дороже — подписываем допсоглашение с новой суммой. Без вашей подписи ни одна цифра не двигается.</p></div></div>
      </li>
      <li class="vbvor-item">
        <h3><button type="button" class="vbvor-q" aria-expanded="false">Сколько занимает ремонт двухкомнатной квартиры?<span class="vbvor-ico" aria-hidden="true"></span></button></h3>
        <div class="vbvor-a"><div><p>Косметический — от 3 недель, капитальный — 45–60 дней, дизайнерский с перепланировкой — до 4 месяцев. Срок фиксируется в договоре с графиком по этапам, вы видите, что должно быть сделано к каждой пятнице.</p></div></div>
      </li>
      <li class="vbvor-item">
        <h3><button type="button" class="vbvor-q" aria-expanded="false">Как происходит оплата?<span class="vbvor-ico" aria-hidden="true"></span></button></h3>
        <div class="vbvor-a"><div><p>Поэтапно: аванс на закупку черновых материалов, затем оплата по факту закрытия каждого этапа. Предоплату за весь ремонт не берём — это защищает вас, а нас держит в графике.</p></div></div>
      </li>
      <li class="vbvor-item">
        <h3><button type="button" class="vbvor-q" aria-expanded="false">Материалы закупаете вы или я?<span class="vbvor-ico" aria-hidden="true"></span></button></h3>
        <div class="vbvor-a"><div><p>Как удобнее. Черновые обычно закупаем мы — по оптовым ценам и с доставкой на объект. Чистовые многие выбирают сами, мы даём спецификацию с точным количеством, чтобы вы не переплатили за лишнее.</p></div></div>
      </li>
      <li class="vbvor-item">
        <h3><button type="button" class="vbvor-q" aria-expanded="false">Можно жить в квартире во время ремонта?</button></h3>
        <div class="vbvor-a"><div><p>При косметическом ремонте одной комнаты — да. При капитальном лучше съехать: пыль от штробления и стяжки проникает везде, а вода отключается на несколько дней. Мы можем разбить работы по комнатам, если переезд невозможен.</p></div></div>
      </li>
      <li class="vbvor-item">
        <h3><button type="button" class="vbvor-q" aria-expanded="false">Что входит в гарантию 3 года?</button></h3>
        <div class="vbvor-a"><div><p>Все работы, которые мы выполнили: стяжка, штукатурка, плитка, электрика, сантехнические соединения. Не входят материалы, которые покупали вы, и повреждения от затопления соседями. Гарантийный случай устраняем за свой счёт в течение 5 рабочих дней.</p></div></div>
      </li>
      <li class="vbvor-item">
        <h3><button type="button" class="vbvor-q" aria-expanded="false">Кто отвечает, если рабочие повредят имущество?</button></h3>
        <div class="vbvor-a"><div><p>Мы. Ответственность прописана в договоре, объект застрахован. Испорченную дверь, поцарапанный паркет или разбитое стекло меняем за свой счёт, разбирательства с бригадой — не ваша забота.</p></div></div>
      </li>
      <li class="vbvor-item">
        <h3><button type="button" class="vbvor-q" aria-expanded="false">Делаете ли вы перепланировку с согласованием?</button></h3>
        <div class="vbvor-a"><div><p>Делаем, но согласование ведёт профильный проектировщик — это отдельная услуга и отдельные сроки, от 2 до 5 месяцев в зависимости от типа дома. Работы по несущим стенам без согласованного проекта не начинаем ни при каких условиях.</p></div></div>
      </li>
    </ul>
  </div>
</section>

<style>
.vbvor, .vbvor *, .vbvor *::before, .vbvor *::after { box-sizing: border-box; }
.vbvor {
  --acc: #e8622a; --ink: #1b1b1b; --muted: #6f6f6f; --line: #e6e3df; --bg: #fff;
  --f: var(--t-text-font, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif);
  --fh: var(--t-headline-font, var(--f));
  background: var(--bg); color: var(--ink); font-family: var(--f); padding: clamp(36px, 5vw, 80px) 20px;
}
.vbvor-wrap { max-width: 1240px; margin: 0 auto; padding: 0 clamp(0px, 2vw, 40px);
  display: grid; grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr); gap: clamp(24px, 4vw, 64px); align-items: start; }
.vbvor-head { position: sticky; top: 24px; }
.vbvor-h2 { font-family: var(--fh); font-size: clamp(26px, 3.4vw, 42px); line-height: 1.12; font-weight: 700; letter-spacing: -.02em; margin: 0 0 14px; }
.vbvor-lead { font-size: 16px; line-height: 1.55; color: var(--muted); margin: 0; }

.vbvor-list { list-style: none; margin: 0; padding: 0; }
.vbvor-item { border-bottom: 1px solid var(--line); }
.vbvor-item:first-child { border-top: 1px solid var(--line); }
.vbvor-item h3 { margin: 0; font-size: inherit; font-weight: inherit; }
.vbvor-q { display: flex; align-items: flex-start; gap: 18px; width: 100%; border: 0; margin: 0; -webkit-appearance: none; appearance: none;
  background: none !important; color: var(--ink) !important; cursor: pointer; font: inherit;
  font-family: var(--fh); font-size: clamp(17px, 1.5vw, 20px); font-weight: 600; line-height: 1.35; text-align: left;
  padding: 22px 0; transition: color .18s ease; }
.vbvor-q:hover { color: var(--acc) !important; }
.vbvor-ico { display: none; }
.vbvor-q::after { content: ''; flex: 0 0 20px; width: 20px; height: 20px; margin-top: 3px; margin-left: auto;
  background: linear-gradient(var(--acc), var(--acc)) center/100% 2px no-repeat, linear-gradient(var(--acc), var(--acc)) center/2px 100% no-repeat;
  transition: transform .3s cubic-bezier(.22,1,.36,1); }
.vbvor-q[aria-expanded="true"]::after { transform: rotate(135deg); }
.vbvor-a { max-height: 0; overflow: hidden; transition: max-height .35s cubic-bezier(.22,1,.36,1); }
.vbvor-a > div { padding: 0 44px 24px 0; }
.vbvor-a p { margin: 0; font-size: 16px; line-height: 1.65; color: var(--muted); }

@media (max-width: 900px) {
  .vbvor-wrap { grid-template-columns: minmax(0, 1fr); }
  .vbvor-head { position: static; }
}
@media (prefers-reduced-motion: reduce) { .vbvor-a, .vbvor-q::after { transition: none !important; } }
</style>

<script>
(function () {
  var ONE_OPEN = true;   /* true — открыт только один ответ; false — можно раскрыть несколько */

  var roots = document.querySelectorAll('.vbvor');
  for (var i = 0; i < roots.length; i++) init(roots[i]);

  function init(root) {
    if (root.__vb) return; root.__vb = 1;
    var items = root.querySelectorAll('.vbvor-item');

    function close(item) {
      var btn = item.querySelector('.vbvor-q'), panel = item.querySelector('.vbvor-a');
      btn.setAttribute('aria-expanded', 'false'); panel.style.maxHeight = '0px';
    }
    function open(item) {
      var btn = item.querySelector('.vbvor-q'), panel = item.querySelector('.vbvor-a');
      btn.setAttribute('aria-expanded', 'true'); panel.style.maxHeight = panel.scrollHeight + 'px';
    }

    items.forEach(function (item) {
      var btn = item.querySelector('.vbvor-q');
      btn.addEventListener('click', function () {
        var isOpen = btn.getAttribute('aria-expanded') === 'true';
        if (ONE_OPEN) items.forEach(close);
        if (!isOpen) open(item);
      });
    });

    window.addEventListener('resize', function () {
      items.forEach(function (item) {
        var btn = item.querySelector('.vbvor-q'), panel = item.querySelector('.vbvor-a');
        if (btn.getAttribute('aria-expanded') === 'true') panel.style.maxHeight = panel.scrollHeight + 'px';
      });
    });
  }
})();
</script>

Вставляется целиком в блок T123 «HTML-код». Внутри уже есть стили и скрипт, подключать ничего не нужно.

Как вставить блок в Tilda

  1. Скопируйте кодКнопка «Скопировать код» выше кладёт всё содержимое в буфер обмена.
  2. Добавьте блок T123В редакторе страницы: «Библиотека блоков» → «Другое» → T123 «HTML-код».
  3. Вставьте и сохранитеНажмите «Контент», вставьте код в поле, сохраните и обновите страницу.
  4. ОпубликуйтеВ превью скрипты Tilda работают не всегда — проверяйте на опубликованной странице.

Подробная инструкция с граблями — как вставить вайб-блок в Tilda.

Что менять под себя

Где в кодеЗа что отвечает
строки вопросов в разметкесами вопросы и ответы — обычный HTML, правится текстом
--accцвет знака раскрытия и активного вопроса
ONE_OPEN в скриптеtrue — открыт один ответ, false — можно открыть несколько

Вопрос-ответ про ремонт: зачем он нужен

FAQ на сайте ремонта закрывает половину звонков «а вы делаете…». Здесь вопросы сгруппированы по логике сделки: деньги, сроки, договор, гарантия — человек находит своё возражение за секунду.

Раскрытие сделано на max-height с плавным переходом, без прыжков вёрстки. Одновременно открыт один ответ — это удерживает блок компактным даже на телефоне.

Вопросы по этому блоку

  • Разметка блока к этому готова: вопрос лежит в отдельном заголовке, ответ — в связанном контейнере. Останется добавить на страницу JSON-LD типа FAQPage — Tilda позволяет вставить его в настройках страницы.

  • Скопируйте любой существующий элемент списка целиком и поменяйте текст. Скрипт находит вопросы сам, никаких индексов дописывать не нужно.

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

  • Нет. Все классы внутри имеют собственный префикс vbvor, поэтому не пересекаются ни со стилями Tilda, ни с другими блоками. Скрипт привязан к своему элементу и запускается один раз, даже если блок вставлен дважды.

  • Раскладка перестраивается под узкие экраны, размеры заданы через clamp, поля ввода имеют шрифт 16 пикселей — iOS не будет зумить страницу при фокусе. Отдельной мобильной версии подключать не нужно.

Другие блоки вопрос-ответ

Ещё блоки для ремонта и строительства

Собрать сайт целиком, а не по блокам

Дровосеки делают сайты на Tilda под ключ: структура, тексты, дизайн, вёрстка и вайб-блоки под задачи бизнеса.