• Почему заголовки не на одной линии?

    @nveretenko
    .news__header {
        display: flex;
        margin-bottom: 30px;
        align-items: baseline;
    }
    Ответ написан
    1 комментарий
  • Почему в моб версии скролл влево?

    @wel34
    Скрол появился из за того что изображение не помещается в экран, поэтому нужно бороться с этим.
    Но при желании скрол можно удалить

    через css

    #id_элемента{
    overflow: hidden;
    }
    .класс_элемента{
    overflow: hidden;
    }

    через JS (смотря на чём появился)

    document.getElementById("id_элемента").style.overflow = 'hidden';
    document.body.style.overflow = 'hidden';

    всё написано здесь htmlbook.ru/css/overflow
    Ответ написан
    Комментировать
  • Почему не видит миксин?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Вы подключаете миксин, который еще не объявлен в общем потоке.

    Подключите так:
    @import 'grid'
    @import 'fonts'
    @import 'top_navbar'
    Ответ написан
    1 комментарий
  • Почему не видит миксин?

    develx
    @develx Куратор тега CSS
    Web developer
    Все таки вначале импортируйте файл с миксинами, а потом те, в которых он используется
    style.sass:
    //Базовые настройки сетки
    @import 'grid'
    @import 'fonts'
    @import 'top_navbar'


    А еще лучше миксины создавайте в файле mixins.sass и его вначале импортируйте.
    Ответ написан
    1 комментарий
  • Как вывести секцию в админке wp в определенном месте?

    HeadOnFire
    @HeadOnFire
    PHP, Laravel & WordPress Evangelist
    https://www.smashingmagazine.com/2011/10/create-ta...
    https://deliciousbrains.com/create-wordpress-plugi...
    admin-page-framework.michaeluno.jp/tutorials/04-cr...

    А вообще решений масса. Я бы советовал сначала подумать и прикинуть. Если у вас будет одна страничка и 2-3 таба, то делайте вручную. Если больше - имеет смысл использовать библиотеку/фреймворк для административный страниц, сильно упростит жизнь.
    Ответ написан
    2 комментария
  • Как сделать чтобы при hover эффекте карточки товара верстка не плясала?

    Chefranov
    @Chefranov
    Новичок
    @media screen and (min-width: 48em)
    ul.products li.product {
         padding: 20px;
    }
    Ответ написан
    Комментировать
  • Как сделать чтобы при hover эффекте карточки товара верстка не плясала?

    @n1ksON
    мидл
    А как position и z-index должны помочь? У вас в hover прописан padding, поэтому и происходит смещение. Добавьте padding изначально карточке, этого не будет заметно.
    Ответ написан
    Комментировать
  • Как использовать :not() в моем случае?

    iiiBird
    @iiiBird Куратор тега CSS
    Пока ты спишь - твой конкурент совершенствуется
    это
    .my_mob_menus li:after
    поменять на это:
    .my_mob_menus > li:not(.dropdown1):after
    Ответ написан
    4 комментария
  • Как реализовать на сайте динамический css?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    1. CSS переменные (сразу смотри поддержку браузерами).
    2. Выводить данные в теге <style> на этапе генерации страницы (частый метод в WP темах):
    <head>
        ...
        <style>
            .classname {
                color: <?= $settings['classname_color']; ?>;
            }

    Ничего сложного, на WP все формируется внутри PHP файлов, которые так могут из коробки, главное занести переменную в вид из конфигу (как и любую другую для вывода, собсно).
    3. Генерировать CSS-файл, который будет подключен в тело.
    4. При выводе генерировать инлайновые стили в тегах (о ужес, но так можно).
    5. Передавать в JS, которым генерировать динамические стили. Принцип описан в документации JS. Вопрос только в том, как туда данные попадут, это может быть, скажем метод а-ля API, чтобы за-fetch-ить JSON или занос в переменную прямо в тело:
    <script>
        var data = <?= json_encode($settings); ?>
        document.querySelector('.classname').style.color = data.classname_color;


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

    6. Если бы не WP с его условно-законченным видом, то можно компилить на уровне бэкенда сырцы типа Sass, передавая в него данные из базы с помощью сборки (я думаю это можно и под WP накрутить, но я лично не пробовал).

    ЗЫ: Градация от первого до пятого → в порядке абсурдности, чем выше, тем адекватнее. 6 уже особняком идет.
    Ответ написан
    3 комментария
  • Как сделать выезжающее меню на сайте?

    eucalipt
    @eucalipt
    Самоделкин.
    Для блока слева создай отдельный элемент на странице. Например, div с id "menu". В него помещай все, что тебе нужно. Умеешь подключать JQuery? На всякий случай, объясню.

    <script src="http://code.jquery.com/jquery-1.11.1.min.js"></script> <!-- JQUERY -->


    Вот эту строчку впихни в head своей страницы. Теперь у нас подключен JQuery.
    Что мы делаем дальше? Дальше нам надо отловить клик по нашему "бутерброду" и после клика, собственно, и выдвинуть менюху. Как это делается:

    $(document).ready(function() {
      $("#menu").click(function() {
        $(this).addClass("show");
      });
    });


    Этот код просто выдели в отдельный .js файл (ну и подключи его как простой .js скрипт, разумеется. Только он должен быть подключен после того, как подключишь JQuery).

    Короче, что мы сделали: мы отловили клик по этому элементу и повесили на него функцию, которая к нашему div'у добавит класс "show". Дальше уже чистый css.

    #menu {
    /* тут твои стили */
    left: -350px;
    }
    
    #menu.show {
    /* тут твои стили */
    left: 0px;
    }


    Я думаю, суть ясна. Когда у менюхи появляется класс "show", то тогда мы просто "выдвигаем" ее из-за левого края страницы. По желанию можно сделать это плавным:

    #menu {
    /* тут твои стили */
    transition: left ease 0.2s;
    left: -350px;
    }
    
    #menu.show {
    /* тут твои стили */
    left: 0px;
    }


    Кстати, этот код написан под менюху, шириной в 350px.

    Теперь ее надо закрыть. Тут 2 способа. Хотя нет, 3.
    Можно отловить в нашем скрипте уход мышки с элемента и просто убрать класс "show" (mouseleave, removeClass()). А можно отловить клик по НЕэлементу див. Это тоже в JQ.
    А можно еще расставить флаги, и контролировать, когда меню открыта, при нажатии на бутерброд, делать одно, и когда закрыта - другое.
    Ответ написан
    4 комментария
  • Зачем нужен Gulp?

    @artinnok
    бекенд-программист
    CSS и JS:
    К примеру, у вас имеется большое количество (Х штук) css или js файлов, которое вы подключаете на своих страницах посредством тэгов <link> и <src>.
    При загрузке страницы, браузер клиента будет отправлять X запросов к вашему серверу, а ваш сервер должен будет ответить на X запросов.
    Это:
    1. Тормозит загрузку страницы - будете ждать ответа от сервера
    2. Загружает ваш сервер

    С помощью сборщиков фронтэнда вы можете "склеить" все файлы в один - main.css и main.js, которые будут отдаваться 2 запросами с сервера. Также, вы сможете минифицировать CSS и JS. Под минификацией подразумевается уменьшение размеров файла на диске. Естественно, более легкий файлы будет быстрее прогружаться + минимальное количество запросов к серверу.

    IMG:
    К примеру, у вас имеется Х изображений размером 700 Кбайт. Клиенту надо будет загрузить 700 * X Кбайт. Если вы пропустите свои изображения через Gulp, то вы получите изображения с меньшим размером на диске и такого же качества, т.е. клиенту придется прогрузить примерно (500-600) * X Кбайт.
    Ответ написан
    1 комментарий
  • Как можно реализовать для клиента вывод блоков по клику?

    @Lord_Dantes
    Плагин ACF. Там есть поле True/False.
    В коде целый блок вводите в условие если поле true то вы показываете блок, иначе его не будет.

    Щас напишу более подробно..
    UPD Подробно
    Подробно

    Устанавливаем плагин в админку Wordpress. Далее заходим в Custom Fields пункт в меню.
    Создаем группу полей и называем её названием страницы на которой будут управлять блоки.
    Далее создаем поле, и у нас есть настройки:
    1. Название поля в админке. Например: Блок продуктов
    2. Название поля в коде (латина). Например: products
    3. Тип поля, выбираем true/false
    Это все настройки что нам нужны для поля, теперь переходим к тому куда его показывать.

    У вас я так думаю есть главная страница в админка допустим. Так вот сразу после основных настроек поля есть настройки вывода.
    Там выбираем пункт страница слева и справа главная страница.
    После сохраняем.

    Далее идем в код и находим наш блок\секцию продуктов и оборачиваем этот кусок кода в условие.
    <?php if (get_field('view_block')): ?>
    //code
    <?php endif; ?>

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

    HeadOnFire
    @HeadOnFire
    PHP, Laravel & WordPress Evangelist
    Отложить загрузку на 5 секунд - выход, но грубоватый (имхо конечно). Я делаю по-другому - оборачиваю код в скролл-ивент + задержка в 1 секунду. То есть, сайт загрузился быстро, и как только пользователь начал скроллить хоть чуть-чуть - секундный таймаут и загрузка дополнительных ресурсов. Гугл доволен, пользователи вообще не замечают задержки:

    var fired = false;
    
    window.addEventListener('scroll', () => {
        if (fired === false) {
            fired = true;
            
            setTimeout(() => {
                // Здесь все эти тормознутые трекеры, чаты и прочая ересь,
                // без которой жить не может отдел маркетинга, и которые
                // дико бесят разработчиков, когда тот же маркетинг приходит
                // с вопросом "почему сайт медленно грузится, нам гугл сказал"
            }, 1000)
        }
    });
    Ответ написан
    29 комментариев
  • Как создать такую микроразметку в google?

    Так сделайте одну картинку с несколькими товарами. Наверняка у этих так и есть, заполняешь форму под товаром и с менеджером решаешь, какую конкретно воду хочешь. Раз в документации нет === нереализуемо.
    Ответ написан
    Комментировать
  • Как стащить такой эффект анимации?

    sfi0zy
    @sfi0zy Куратор тега CSS
    Creative frontend developer
    CSS трансформации: rotate пластинке - чтобы крутить, translate обертке - чтобы подвинуть на :hover.
    CSS анимации - чтобы крутить бесконечно долго.
    Ответ написан
    Комментировать
  • Как загрузить JS файл через какой-то интервал времени?

    mlnkv
    @mlnkv
    JavaScript Developer
    function loadScript(src) {
      var s = document.createElement('script')
      s.src = src
      document.body.appendChild(s)
    }
    
    // и дальше в нужном месте вызываем
    loadScript('path/to/my/script.js');
    
    // или по таймауту
    setTimeout(function() { loadScript('path/to/my/script.js') }, 15000);
    Ответ написан
    3 комментария
  • Как реализовать админку на vue js?

    mmmaaak
    @mmmaaak
    чем админка отличается от блога на фронте? Такие же запросы к бэку за данными (по сути список постов === список зарегистрированных пользователей для админки), такие же запросы для отправления данных из форм (создание/редактирование постов в блоге === создание/редактирование данных в админке). Разница в дизайне, а какие данные и как запрашивать/отправлять - это вопросы к бэкенду
    Ответ написан
    Комментировать
  • Как реализовать админку на vue js?

    @kirill-93
    Админка ничем не отличается от неадминки. Вы ведь в своих курсах видите, как с помощью vue отрисовывать списки, получать данные с сервера, добавлять/удалять записи и тд? Вот и применяйте все эти знания для создания админки.
    Ответ написан
    Комментировать
  • Каким альтернативным способом установить яндекс цели?

    @gribanov2la
    Full stack web разработчик
    <a  class="ym-trigger"  href="tel:+7812 331 17 xx">+7 (812) 331-17-xx </a>

    window.onload = function () {
      document.querySelectorAll('.ym-trigger').forEach(function ($el) {
        $el.addEventListener('click', function () {
          window.ym(20084554, 'reachGoal', 'tel');
        });
      });
    };
    Ответ написан
    1 комментарий