Ответы пользователя по тегу HTML
  • Есть ли скрипт для временной блокировки прокрутки на смартфонах?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега HTML
    Руководитель frontend направления, предприниматель
    body.no-scroll {
    overflow: hidden;
    }
    Ответ написан
    Комментировать
  • Какой выбрать просмотрощик для сайта для ОЧЕНЬ больших jpg?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега HTML
    Руководитель frontend направления, предприниматель
    <a href="[оригинальное изображение]" target="_blank"><img src="[миниатюра]"></a>
    Ответ написан
    Комментировать
  • Как сделать индикатор перехода по секциям на сайте?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    1. Стоит начать с прослушивания прокрутки
    2. Затем вычислять совпадает ли прокрутка с координатами секции.
    3. При совпадении любым удобным способом получать индекс соответствующего элемента в твоей навигации (можно раздать через data-атрибуты, или просто ловить текущий индекс [поплохеет при разной вложенности]). И задавать ему класс (для подсветки).

    Сама навигация должна быть размещена посредством position:fixed.
    Ответ написан
    Комментировать
  • Как задать время кэширования html сайта?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега HTML
    Руководитель frontend направления, предприниматель
    1. Рекомендую смотреть на даты публикаций.
    2. Кеширование статических ресурсов (в том числе изображений) может осуществляться посредством задачи им времени кеширования в конфиге htaccess (Apache сервер), либо в конфиге Nginx.
    3. Кеширование ответа результата работы бэкенда (читай данные из базы) это другой вид кеширования, который не скачивается пользователю в устройство, а просто снимает нагрузку с оперативной памяти, вычислительных мощностей сервера. Этот вид полностью зависит от используемого движка.

    Итого, в первую очередь тебе стоит разобраться с кешированием статики, тут уж зависит от того, кто у тебя и как ее отдает. Сейчас почти везде стоит как апач, так и nginx. И часто статика разведена на nginx.

    А потом присмотреться к движку. Скорее всего под джумлу есть модуль, или, может из коробки умеет, но тут точно не скажу, так как считаю ее давно умершей.
    Ответ написан
    Комментировать
  • Почему overflow: hidden не работает?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    Это жесть, конечно.
    1. У тебя там не svg в коде, а читай iframe, только в лице object.
    2. Анимацию оформи прямо в теле своего документа, так ты сможешь ее отладить, в том числе задать реальные размеры, соответствующие области, куда ты ее вписываешь.

    ЗЫ: открой сайт в с планшета\режиме эмулятора.
    Ответ написан
    Комментировать
  • Почему ухудшается качество изображений?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    1. У изображения есть физический размер. Любая манипуляция по «впихиваю» его в размер больше или меньше отразится на прорисовке. Плюс огромный фактор играет ретинизация. Если ты работаешь с растровой картинкой 50 на 50 и запихиваешь его в размер 50 на 50 и смотришь на это с экрана повышенной плотности, жди сюрпризов. Тем не менее все это лучше, чем попытка растянуть пикчу, там вообще все плохо.
    2. У тебя в верстке куча иконок, а не пикч, используй SVG, это формату по барабану (почти), в какой размер ты его вписываешь, главное в параметрах не обкекаться.
    Ответ написан
    Комментировать
  • Как задать высоту по тексту?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    Моя любимая тема:
    https://habr.com/ru/company/pt/blog/337450/
    Достаточно почитать, чтобы оценить мою боль.

    Тем не менее Ankhena права, компенсируй отступами. Можешь даже сделать умный вид и рассчитать отступ на базе метрик шрифта.
    Ответ написан
    Комментировать
  • Как выровнять по таблице чекбоксы внутри контакт форм 7?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    Насколько я помню, в contact-form не используется из коробки таблица. Тем не менее если речь о таблица, то твои чекбоксы должны быть обернуты в свои label-ы, а сама ячейка должна обладать свойствами vertical-align: middle.

    Но это:
    1. Неудобно в управлении;
    2. Геморройно в реализации.

    Тебе скорее всего потребуются flex-box-ы вместо конструкции ячейки таблицы, чтобы чекбоксы были адекватно выровнены относительно друг-друга с возможностью переноса на следующие строки, если не буду влезать.

    А так как ты сам выбираешь, как именно вставлять чебоксы в верстку, то это не составит особого труда, главное иметь знания в css\html.

    Оффтопом к вопросу, но по дизайн-решению: По идее у тебя должны быть не чекбоксы, а radiobutton, ведь выбрать можно что-то одно. Край → select, а лучше использовать другой подход к интерфейсу, основанный по механике на radiobutton-ах, но визуализированый понятнее.
    Ответ написан
    6 комментариев
  • Как сверстать блок?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    Изображения ограничиваются по ширине, это грубо говоря стандарт таких решений. А вот, чтобы при всем этом они были в высоту нормальные, то пикчи нарезаются одинакового размера. Это самый безопасный способ, так как позволяет разобрать логотипы с разным визуальным весом.

    Другой подход через object-fit, но там сразу смотри в поддержку браузерами.

    Или через background-size:contain;, но чем дальше, тем хуже относительно первого корректного метода.
    Ответ написан
    Комментировать
  • Как через SVG-спрайт подключать картинки через background?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    Спрайты реализуются вот так. Плюс минус, можно не использовать symbol-ы, или даже defs, а просто вызывать по id.

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

    Еще больше структурированной информации ты найдешь тут.
    Ответ написан
    Комментировать
  • Невидимая часть фиксированного блока не дает нажимать на ссылки за ней — как исправить?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    1. https://jsfiddle.net/za72f19s/
    2. Либо ты можешь задать обертке .floating-block высоту 0px, убедиться, что нет overflow:hidden;, а дочернему указать его высоту, к примеру (не обязательно, но я не уверен).
    3. Использовать вычисляемое расстояние от правого\левого края (да, я понял, что ты пытаешься сделать → чтобы плавающий блок был в рамках контентной сетки).

    И принять тот факт, что объекты, которые не имеют фона вовсе не прозрачные для событий мыши. Ну и проще такое делать с заливкой во всю ширину, чтобы избежать конфликтов. Первый пункт может к ним привести.

    PS: float-ы → прошлый век, сейчас используют для этого флексы и есть ради чего.
    Ответ написан
    2 комментария
  • Как адаптивно сверстать такое меню средствами Bootstrap?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    Первое, что следует взять во внимание, navbar яндекс это просто условно готовая база, которая подойдет для большинства решений, но в момент, когда ты упираешься в дизайн, то он [navbar] работать перестает. К слову, в последней версии вроде прямо готовый модуль убрали и заменили на компоновку.

    Дальше, принять тот факт, что тебе придется описывать шапку на 90% самому.

    Структурно же у тебя все вписывается в сетку и логику:
    container-fluid
    →container (верхняя часть шапки)
    →container + отрицательный margin или transform для желтой навигации и к ней тебе с наибольшей вероятностью удобно будет использовать flex + justfy-content: space-between.

    А про адаптивность говорить нельзя пока у тебя не руках нет макета для мобилок. Но как результат тебе все равно придется описывать самостоятельно, чтобы вписаться в дизайн. Либо по макету, либо брать на себя ответственность за мобильное решение.

    PS: в идеале решение должно быть mobile-first (так проще).
    Ответ написан
    Комментировать
  • Как дальше развиваться в верстке?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    Тебе нужны HTML\CSS\BEM\JS→Vue\React.

    Не стоило разделять их на два пункта, так как все, что ты назвал → фронтенд. При этом движки вторичны, но от них еще никто не умирал. Разве что от joomla)

    Чтобы стать хорошим фронтендщиком или фулом у тебя в любом случае уйдет много времени. Либо ты гений.
    Ответ написан
  • Как запретить перетаскивание img с зажатой левой кнопкой мыши?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    1. Фоновые картинки не перетаскиваются.
    2. Если поверх изображения в его полный размер кинуть пустой див с позиционированием z-index-а выше, то тоже нельзя будет захапать (как в инсте).
    Ответ написан
    Комментировать
  • Как определённую переменную добавить в текст?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега HTML
    Руководитель frontend направления, предприниматель
    Используй F-строки.

    А вообще я вижу фляшки синтаксис. У нее есть возможность рендерить по шаблонам.
    Ответ написан
    Комментировать
  • Как вытянуть низ блока svg придобавлении других?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    Ответ написан
    Комментировать
  • Не могу понять, как сделать закрытие меню, нажимая на пустое поле?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    Привяжи перехват клика к #wrapblur. Кстати, не используй ID на странице просто так.
    Или воспользуйся всплытием и перехватом событий.

    А, тю, невнимательно прочитал.
    Тебе надо в каждой функции скрывать все, что должно быть скрыто, даже если элемент не отображен. Или привязать проверку к переменной «глобальной»-триггеру.
    Ответ написан
  • Как убрать горизонтальный скролл?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    Тебе необходимо вписать видео в область, а не, чтобы видео задавало свои параметры. Поможет тебе в этом object-fit(сразу обрати внимание на поддержку) или просто 100%-ная ширина видео.

    И, парень, у тебя ни один блок не закончен. Мнения спрашивать стоит много позже и заранее готовится к тухлым помидорам.
    Ответ написан
    Комментировать
  • Как сделать пошаговую форму с записью данных в БД?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега JavaScript
    Руководитель frontend направления, предприниматель
    Тут много описано про сессии и да, это это корректный подход при незавершенной базовой регистрации.

    А вот если у тебя уже есть в базе логин и пасс пользователя, по которому можно зайти. Или привязка к социальной сети, то тут помогут триггеры в базе в виде boolean-значений. Скажем:

    user сущность с колонками:
    1. is_active — так можно делать ленивое удаление.
    2. is_confirmed — подтвердил почту.

    И т.д. Так, ты сможешь проверять в роуте текущее состояние и в зависимости от сценария пускать в ту или иную сторону. Например при is_confirmed == false → вместо ЛК отправлять на страницу с кнопкой «выслать ключ еще раз».

    Я думаю ты видел такое на сервисах.
    Ответ написан
    Комментировать
  • Как скрыть вывод названий рубрик и категорий?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега CSS
    Руководитель frontend направления, предприниматель
    Ну как найти кусок кода, который тебе надо скрыть ты уже знаешь. Ты прямо на полпути к истине.

    Теперь осталось только изучить JS или CSS, чтобы научится писать стили. Для решения проблемы хватит банального display:none;.

    Потом, может, немного PHP, чтобы понять, как это работает, а дальше вообще красота → изучить, как работает сам WP, чтобы действительно понять, как на самом деле это работает, как наследуется и как переопределяется для достижения результата.
    Ответ написан