• Как сделать плавную прокрутку страницы до якоря?

    BedwaRe
    @BedwaRe
    Пиши код
    $("body").on('click', '[href*="#"]', function(e){
    	var fixed_offset = 100;
    	$('html,body').stop().animate({ scrollTop: $(this.hash).offset().top - fixed_offset }, 1000);
    	e.preventDefault();
    });

    Во-первых, асинхронно (например, у меня отзывы подгружались с другого сервиса, с задержкой несколько секунд). Во-вторых, для всех ссылок, которые содержат символ # (являются якорями). В-третьих, у меня в проекте было фиксированное меню сверху, поэтому при прокрутке прямо по якорю часть контента перекрывалась, для решения этой проблемы предлагаю установить fixed_offset равный высоте фиксированного меню (опционально).
    Ответ написан
    8 комментариев
  • Как сделать увеличение блоков при наведении?

    Maxsior
    @Maxsior
    loading...
    ...
    .skill_block:hover {
        position: relative;
        opacity: 1;
        transform: scale(1.1); /*вот так*/
    }
    ...

    P.S. может не поддерживаться в некоторых браузерах, используите перфиксы.
    Ответ написан
    1 комментарий
  • Где лежит каркас страницы index на движке Opencart?

    nowm
    @nowm
    Я сначала пытался объяснить, как устроен Opencart, чтобы вам было легко потом находить, какие шаблоны используются на конкретной странице, но получается, что это будет слишком объёмно. Поэтому я представлю ситуацию, когда используется стандартная установка Opencart.

    Заголовочная часть HTML-кода, шапка страницы, плюс выпадающее меню категорий, плюс уведомления — <корень сайта>/catalog/view/theme/<название шаблона>/template/common/header.tpl

    Футер — <корень сайта>/catalog/view/theme/<название шаблона>/template/common/footer.tpl

    Контент — зависит от текущего пути. Например, если текущий путь — product/product (страница товара), то шаблон можно найти в <корень сайта>/catalog/view/theme/<название шаблона>/template/product/product.tpl. Если корневая страница сайта (вы её назвали index), то её шаблон лежит в <корень сайта>/catalog/view/theme/<название шаблона>/template/common/home.tpl.

    Левая колонка — <корень сайта>/catalog/view/theme/<название шаблона>/template/common/column_left.tpl

    Правая колонка — <корень сайта>/catalog/view/theme/<название шаблона>/template/common/column_right.tpl

    Служебная часть перед контентом — <корень сайта>/catalog/view/theme/<название шаблона>/template/common/content_top.tpl

    Служебная часть после контента — <корень сайта>/catalog/view/theme/<название шаблона>/template/common/content_bottom.tpl

    <название шаблона> можно узнать на странице настройки магазина в админке: Админка → Меню «Система» → пункт «Настройки» → ссылка «Изменить» напротив текущей конфигурации → вкладка «Магазин» → пункт «Шаблон».

    Всё содержимое обычно компонуется из этих кусков.

    Правая и левая колонки, а так же служебные части перед и после контента обычно заполняются модулями — в зависимости от настроек модулей. Эти четыре шаблона лучше не трогать, если вы не уверены до конца, что делаете.
    Ответ написан
    4 комментария
  • Интернет-магазин без ИП и прием оплаты?

    zamboga
    @zamboga
    Бизнес-аналитика, фин. моделирование, дашборды
    Для старта и теста ниши хватит 10000-30000 ₽, и то, на рекламный бюджет на период теста, при условии, что вы все делаете сами.

    Находите SaaS-платформу для интернет-магазина, например insales.ru, наполняете товаром.

    Покупаете на skladchik.com за условные 100-300 руб. курсы по контекстной рекламе, и рекламе в соцсетях (надо -
    подскажу конкретные). Проходите их.

    Запускаете трафик, докручиваете рекламу.

    Анализируете себестоимость итогового заказа с учётом стоимости рекламы и конверсии сайта на сайте декомпозиция5.рф

    И только после этого закупаете товар, когда понятна будет себестоимость, а не наоборот! Тогда есть шанс не прогореть.

    После первых 10 подтвержденых заказов (которые обработаете, закупаете поштучно, и развозите самостоятельно) закупаете товар оптом и отдаете его на фулфилмент (например, reworker.ru).
    При желании, подключаете любой сервис приёма платежей (с физиками все работают), например, moneta.ru

    Все, вы занимаетесь только трафиком и развитием бренда.

    Как встанет вопрос ИП - открываете через Эльбу или "моё дело", они бесплатно подготовят все бумажки через пошаговый мастер. Обслуживание стоит копейки, а в Эльбе вообще бесплатно для новых ИП (1 или 3 года, не помню уже). Зато всю отчётность готовит автоматом, все платежи тоже, есть синхронизация с клиент-банками и напоминалки по уплате налогов (платёжки в налоговую сервисы тоже сделают автоматом).

    Нужна будет помощь - контакты в профиле.

    UPD. Добавил инфу про бесплатный сервис анализа доходности проекта.
    Ответ написан
    6 комментариев
  • CSS как выбрать родительский элемент, зная дочерний

    Serezhka
    @Serezhka Автор вопроса
    Спасибо, ребята, за помощь.
    Действительно нужно было именно зная дочерний, добраться до родительского, потому что к дочерним проставляются id, а к родителям нет. И к некоторым родителям нужно добавлять уникальные классы.
    Хотелось бы именно через CSS, потому что через jquery я бы также всем родителям проставил id.
    Но большое спасибо за помощь!
    Вы мне очень помогли.
    С уважением.
    Ответ написан
    Комментировать
  • От чего так долго запускается сборщик gulp?

    litlleidiot
    @litlleidiot
    Фронт-Энд разработчик
    Точно также как когда ты первый раз открываешь тяжелый сайт он открывается за 10 секунд к примеру а потом уже за 1 секунду. Кэш
    Ответ написан
    2 комментария
  • От чего так долго запускается сборщик gulp?

    SagePtr
    @SagePtr
    Еда - это святое
    Плагины gulp в node_modules содержат огромное множество вложенных папок, содержащих много мелких файлов. Пока оно всё это хозяйство прочитает с диска - пройдёт много времени. А потом да, из дискового кэша.

    Случайно взятый проект, использующий для сборки gulp:
    4bc2bb6d49d846cda8f514c2c522ffe8.png
    Ответ написан
    3 комментария
  • Посоветуйте Lato-похожий шрифт с кириллицей

    sharapovk
    @sharapovk
    На сайте разработчика шрифта есть версия 2.0 с поддержкой кириллицы: www.latofonts.com/lato-free-fonts/#download.
    Пишут, что скоро должен появиться в Google Fonts.
    Ответ написан
    18 комментариев
  • Как Toggle Class использовать в двух разных местах на одной странице (два класса - два скрипта)?

    you_web
    @you_web
    Кратко обо мне
    Сейчас вы просто написали функцию, но нет никаких условий для её выполнения
    Вам надо выбрать на какой элемент повесить событие, что бы при клике выполнялась ваша функция.
    Например:
    const btn1 = document.querySelector('.btn1');

    Далее на эту кнопку надо повесить событие click и указать какая функция должна выполняться при этом событии:

    btn1.addEventListener("click", myFunction);
    Обратите внимание, что функция в при навешивании в обработчик пишется без ().
    Ответ написан
    Комментировать
  • Оцените дизайн лендинга?

    @Istinal
    Добрый день.
    Какие я вижу вашем слайде Лендинга проблемы. 5e64fdd147695101348863.png

    1. Телефон как-то странно подчеркнуть линией. лучше добавьте с краю иконку. чтобы выделить номер телефона.
    2. Кнопка сильно вытянутая текст в ней кажется очень маленьким. (тут нужно поиграть с кнопкой и текстом)
    3. Расстояние между кроватью и текстом с точками довольно близкое.
    4. Точки идут какой-то лесенкой это не очень хорошо, складывается мнение, что вы забыли выравнять их.
    5. текст в карточке "подробнее" слишком близко примыкает к границам карточки как сверху так и снизу
    6. Диван с левой стороны и правой сильно примыкает к границам карточки, нет воздуха.
    7. меню сайта не видно, оно сильно примыкает кверху, плюс сливается с фоном заднего вида. Логотип, главная, о нас, каталог, контакты, тоже сильно к друг другу примыкают.
    8. та же проблема что и везде, у текста "Почему именно мы" мало воздуха сверху страницы.
    9. Смотря на ваш сайт создается ощущение, что вы все старались максимально близко к друг другу расположить.

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

    zahmTOD
    @zahmTOD
    Графический дизайнер
    Что вы имеете ввиду под «креативное»? В интерфейсах достаточно жесткие рамки, чтобы страдать фигней, особенно в массовом продукте.

    А так — отдыхайте. Займитесь чем-то ненавязчивым, съездите в другой город, просто сделайте генеральную уборку. Основная задача — не думать о работе.
    Ответ написан
    Комментировать
  • Откуда вы черпаете идеи для дизайна?

    Lillipup
    @Lillipup
    Allons-y, Алонсо!
    Нашел что то интересное -> скопировал и переделал
    Ответ написан
    Комментировать
  • Почему google analytics тормозит сайт?

    @bedolazhka
    Индусы со времён динозавров делают так:
    <?php if (!isset($_SERVER['HTTP_USER_AGENT']) || stripos($_SERVER['HTTP_USER_AGENT'], 'Сюда прописать имя юзерагента google page speed') === false): ?>
    // сюда код аналитики
    <?php endif; ?>


    увидели 100 из 100? Теперь удалите костыль и перестаньте заниматься тупыми замерами, раз гугл не посчитал нужным сообщить своему замерщику время кеширования своей же аналитики :)
    Ответ написан
    Комментировать
  • На файловом сервер Debian всегда забита оперативная память. Стоит ли очищать?

    merryjane
    @merryjane
    Системный администратор
    Очищать не надо. Это нормальный процесс работы системы с оперативной памятью.
    В линуксе такая модель работы с оперативной памятью. Чтобы память не простаивала страницы, которые были прочитаны помещаются в кеш. Это ускоряет операции повторного чтения. Когда память понадобится процессам этот кеш будет или вытеснен в swap или дропнут. В общем used\free не однозначные показатели и надо смотреть картину в целом.
    Вот интересная статья на эту тему:
    markelov.blogspot.ru/2009/01/linux-procmeminfo.html
    Ответ написан
    Комментировать
  • Настройка почты для нескольких сайтов на одном ip - как?

    @neol
    Правильно ли я указал dns записи?

    Вроде да.

    Если ваш почтовый сервер отправляет почту с IP 1.2.3.4 и представляется как mail.domain1.com, то должны соблюдаться два условия
    • A запись mail.domain1.com должна указывать на 1.2.3.4
    • PTR запись для 1.2.3.4 должна указывать на mail.domain1.com

    Т. е. всё (HELO сервера, FQDN и PTR) должно просто соответствовать друг-другу.

    MX записи для всех этих доменов при этом не обязательно должны указывать именно на mail.domain1.com, но можно и так.

    SPF лучше использовать SoftFail (~all). Например
    v=spf1 a mx ~all
    Про DKIM и DMARC тоже стоит почитать (они чуток посложнее SPF).
    Ответ написан
    2 комментария
  • Надо ли ставить точку в конце Nameserver?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Точка в конце означает, что это полное доменное имя, а не относительное.
    Если точка не стоит, то к имени допишется имя вашего домена.

    В продвинутых панели сами догадываются и ставят или убирают лишние точки.
    Ответ написан
    Комментировать
  • Как настроить домен для почты?

    Saenara
    @Saenara
    А-запись -- отображение доменного имени в IP адрес.
    MX(Mail eXchange)-запись -- имя почтового сервера(ов) для домена.
    CNAME-запись -- отображение доменного имени в другое доменное имя.
    PTR-запись -- отображение IP адреса в доменное имя.
    Использование ссылки на CNAME в качестве имени почтового сервера считается недопустимым (RFC2181).

    При доставке почты МТА используют MX и A записи для домена, вторую -- если нет первой.

    Допустим у вас есть сервер с IP адресом 1.2.3.4 и он предоставляет некоторые сервисы, к которым вы желаете обращаться по символьному имени myserver.com.
    Для этого вы вносите в ДНС А-запись вида
    myserver.com. A 1.2.3.4

    Если вы собираетесь принимать почту для этого домена на том же сервере, то вам, в принципе, ничего более для этого не надо, поднимаете почтовый сервер (MTA) и наслаждаетесь жизнью.
    Однако, если вы собираетесь ещё и отправлять почту, то начинаются подводные камни.
    Серверы-получатели отправляемой вами почты могут захотеть, чтобы присутствовала PTR-запись для вашего IP адреса 1.2.3.4, отображаемая в то же имя. В случае если у вас один домен, один сервер и провайдер не возражает, то прописываете PTR (так называемую обратную зону) и наслаждаетесь жизнью:
    1.2.3.4 PTR myserver.com.

    Если хостинг-провайдер не идёт на сотрудничество (что редко), либо у вас на одном сервере обслуживаются более одного домена, либо это планируется, то жизнь перестаёт быть такой простой и незатейливой. В этом случае и выходит на сцену схема с MX записями.
    Исходная ситуация та же: у вас есть сервер с IP 2.3.4.5, обслуживающий домен myservice.org (его веб-сервер, например) и отрправляющий/принимающий для него почту. А-запись:
    myservice.org. IN A 2.3.4.5
    Теперь мы создаём ещё одну А-запись, имя не принципиально, но лучше выбрать говорящее, типа mail или mx:
    mail.myservice.org.  A 2.3.4.5
    или
    mx.myservice.org. A 2.3.4.5

    То есть, фактически, ваш сервер получает второе имя, которое ссылается всё равно на тот же IP адрес.
    Теперь это новое имя вы делает почтовым сервером для вашего домена внесением ещё одной записи:
    myservice.org. MX 10 mail.myservice.org.
    Число после "MX" -- это приоритет данного сервера на случай, если их несколько, чем меньше число, тем приоритетнее сервер.
    После этого действия почта должна начать ходить (при условии правильной настройки вами MTA на вашем сервере).
    почти всегда, за исключением особо привередливых борцов со спамом.
    Ответ написан
    5 комментариев
  • На сколько сильно Pthumb (плагин MODX) нагружает сервер?

    Sanes
    @Sanes
    Там же есть кеширование. Напрягает конечно, но не сильно. Если вы не конвертируете 4k изображения.
    Ответ написан
    Комментировать
  • Как в одном getImageList вывести сначала все поля одного типа, а потом все поля другого типа?

    @maniiii
    Проще и быстрее всего, сделать это посредством css, взгляните в сторону flex.
    Если используете феном, то можно через него, ну либо создайте сниппет и обрабатывайте через сниппет. MIGX отдает данные в json, так что обработать его будет не сложно.
    Ответ написан
    Комментировать