• Как реализовать такую расстановку блоков на FlexBox CSS?

    sfi0zy
    @sfi0zy Куратор тега CSS
    Creative frontend developer
    С помощью чего и как можно реализовать вот такую расстановку блоков?

    На ум сразу приходит masonry.
    Ответ написан
    Комментировать
  • Начал переводить документацию вебпака. Что скажете?

    sfi0zy
    @sfi0zy
    Creative frontend developer
    Документация - это не тяп-ляп и в продакшен. Документация живет с проектом и требует постоянного обновления. Хуже отсутствующей документации только устаревшая документация. Так что если вы готовы ее постоянно обновлять - то да, это будет полезно по крайней мере новичкам, которые захотели войти-в-айти без английского. Если не готовы, то ваше творение через пару месяцев устареет, а через год его можно будет выкинуть, так как все изменится до неузнаваемости.
    Ответ написан
    1 комментарий
  • Как реализовать такой эффект на изображение?

    sfi0zy
    @sfi0zy Куратор тега CSS
    Creative frontend developer
    Посоветуйте пожалуйста какие-нибудь библиотеки.

    Библиотеки - не труъ. Здесь достаточно чистого JS и щепотки GLSL. Рекомендую почитать свое Введение в программирование шейдеров для верстальщиков, там аналогичный пример есть (если картинки не прогружаются, можно включить VPN, там что-то неладное бывает с ними иногда, видно происки фиксиков роскомнадзора). А прямо этот эффект делал Юрий Артюх на одном из стримов.
    Ответ написан
    Комментировать
  • Проблемы с анимацией в Safari?

    sfi0zy
    @sfi0zy Куратор тега CSS
    Creative frontend developer
    на айфонах

    caniuse.com/#feat=css-animation:
    iOS 6.1 and below do not support animation on pseudo-elements. iOS 7 and higher are reported to have buggy behavior with animating pseudo-elements.


    Обе лагающие анимации как раз связаны с псевдоэлементами. Имеет смысл их заменить на обычные div-элементы.
    Ответ написан
    1 комментарий
  • Оцените пожалуйста вёрстку(2)?

    sfi0zy
    @sfi0zy Куратор тега CSS
    Creative frontend developer
    Замечание номер раз: код минифицирован, не смотрел.
    Замечание номер два: макеты не видел, возможно местами накосячил дизайнер.

    Беглый просмотр дал следующее:

    №1:
    - Шрифтыыыы... Arial - это боль. Вы, вероятно, забыли подключить нужный шрифт
    - Иконки социальных сетей слишком маленькие, сложно попасть, можно поболее сделать
    - Две иконки одинаковые, нехорошо, путает
    - В поле для поиска серым по серому написано - не видно
    - Гамбургер есть, но что он делает - не понятно
    - В карусели, при нажатии на точки появляется ненужный outline
    - В поле для поиска иконка съехала
    - Размер шрифта в одинаковых элементах скачет
    - Вертикальные отступы скачут
    - При адаптиве картинки плющатся
    - Какие-то ошибки в консоли

    №2
    - Такое впечатление, что навигация и текст под ней выровнены не по левому краю
    - Так и хочется, чтобы кнопка с рыжей границей при наведении стала вся рыжей, как это обычно и делают
    - Выпадающая выбиралка языка и валюты пропадает, ее нельзя использовать мышкой
    - Два поля для поиска на одном экране? Хотя это косяк дизайнера, ладно
    - Какие-то иконки с сердечками, вопросиками и.т.д. Нужно по крайней мере добавить всплывающие подсказки, что это вообще такое
    - Плюс и минус подсвечиваются как одна кнопка
    - Интерактив никакой не работает, нужно доделывать
    - Имеется непостоянство в подсвечивании элементов при наведении
    - Скидки в 70%, круто! Эээ.. А где тут кнопка "показать товары со скидкой"?
    - Внезапный шрифт с засечками
    - Внезапные серые бордеры, когда только что в такой же секции их не было
    - Вертикальные отступы опять везде пляшут
    - Белый по желтому не читается
    - Опять внезапное выравнивание влево, когда только что в такой же секции было по центру
    - Подпишитесь на рассылку! Ввожу почту и понимаю, что кнопки "подписаться" там нет. Fail.
    - На телефоне в подвале все выравнивание скачет влево-вправо

    Совет номер раз: почитайте про дизайн для недизайнеров и книги от Nick Kolenda, чтобы лучше понимать, где что-то явно не так и имеет смысл поправить.

    Совет номер два: старайтесь все в коде приводить к единой системе, чтобы одинаковые вещи действительно были одинаковыми. Этому способствуют препроцессоры и введение переменных с основными размерами + миксины для эффектов. Системная верстка всегда оставляет лучшее впечатление, чем бессистемная.

    Совет номер три: изучайте JS и доделывайте интерактивные элементы, чтобы ими можно было пользоваться. Не стоит это дело откладывать в черный ящик, работодателям чисто верстка без скриптов нужна очень редко.
    Ответ написан
    1 комментарий
  • Как сделать canvas в качестве фона для div?

    sfi0zy
    @sfi0zy Куратор тега CSS
    Creative frontend developer
    канвас добавить в качестве фона для div + background-size: cover

    Проверьте правильность позиционирования этого фона, может он у вас съехал куда-то и вы его не видите. Плюс не забывайте, что у png есть прозрачность, и, если канвас закрашен не полностью, а вы используете лишь его часть, то сложится впечатление, что на фоне ничего нет, хотя там что-то есть.

    Ответ написан
    Комментировать
  • Что нужно исправить в логотипе?

    sfi0zy
    @sfi0zy
    Creative frontend developer
    Логотип на тему "Кибербезопасность"... что нравится?

    №6 - логотип для компании, занимающейся расследованиями инцидентов в области информационной безопасности и специализирующейся на терморектальном криптоанализе (не буду говорить про два стула, тут он всего один).

    Что нужно исправить?

    1. Добавить в центр щита знак вопроса (подчеркнет нацеленность на расследования).
    2. Нужно крестовину у меча чуть-чуть подлиннее сделать, а то если картинку уменьшить, то ее будет не видно.
    3. Немного добавить контрастности между оттенками синего, чтобы детали не сливались.
    4. Сделать линию по краю щита одной ширины.
    5. Перерисовать в SVG, чтобы не зависеть от размера и чтобы по вектору делать вывески на здания, гравировку на мерч и.т.д.
    6. Добавить разные варианты логотипа под разные условия использования, наделать мокапов с визитками, блокнотами, пакетами, постерами и.т.д. Определить четкий ограниченный набор цветов и шрифтов для всего этого. Иными словами довести это до состояния фирменного стиля и оформить соответствующим образом. Тогда это будет уже не просто картинка, а серьезный, хоть и вымышленный, кейс в портфолио.
    Ответ написан
    Комментировать
  • За какой срок можно выучиться на junior front-end dev.?

    sfi0zy
    @sfi0zy
    Creative frontend developer
    60% html и css

    А вы уверены? Рекомендую пройтись по списку know it all, чтобы точно понимать, что вы знаете, а что - нет. И это не издевка. Для разработчика очень полезно иметь представление о том, что существует в его языках, кроме того, что он "знает". Это помогает меньше тупить там, где есть стандартное решение, которое можно за секунду загуглить, но только если знаешь, что оно вообще существует в природе.

    что учить после

    Нужно изучить процесс сборки фронтенда, который нынче применяют, и понять, зачем нужны все эти инструменты - пре/пост-процессоры, линтеры, сборщики, таск-раннеры, пакетные менеджеры и.т.д. Именно не "выучить", а понять смысл. И почитать про хорошие практики и методологии. Архитектуру проектировать джуниора никто не посадит, а вот чистый и понятный код должен быть. После этого уже имеет смысл познакомиться с популярными библиотеками и фреймворками, которые вы без труда найдете в описаниях вакансий.

    где найти практику

    Макеты для верстки - в гуглопоиске, интересные примеры и еженедельные челленджи - на CodePen, вопросы из бытовой фронтендерской практики и разные решения для них - тут, на тостере (отвечать тоже полезно, пока объясняешь что-то другому - сам лучше понимаешь).
    Ответ написан
    1 комментарий
  • При использовании пользовательского маркера у summary, на IOS маркер поворачивается через один. Как исправить?

    sfi0zy
    @sfi0zy Куратор тега CSS
    Creative frontend developer
    Это очень похоже на баг флексбоксов №9. Суть в том, что некоторые элементы, в том числе summary, отображаются браузерами по-своему и их нельзя сделать flex-контейнерами - все конфликтует между собой. Там может любая магия происходить из-за этого. В некоторых браузерах это пофиксили, в некоторых - нет. Мораль: используйте флексы осторожно, особенно там, где и без них можно обойтись - display: block и inline-block никто не отменял.
    Ответ написан
    3 комментария
  • В чём отличие zoom от scale?

    sfi0zy
    @sfi0zy Куратор тега CSS
    Creative frontend developer
    У CSS-трансформаций есть такая штука, как transform-origin. В вашем примере эта точка находится по умолчанию в центре элемента. А у нестандартного свойства zoom аналогичная точка по умолчанию в левом верхнем углу элемента. Добавьте вашему workspace transform-origin: 0 0; и поведение станет схожим.
    Ответ написан
    Комментировать
  • Где и как вы проверяете кроссбраузерность?

    sfi0zy
    @sfi0zy Куратор тега CSS
    Creative frontend developer
    Кроме BrowserStack есть еще сервис CrossBrowserTesting.
    Ответ написан
    Комментировать
  • Перестал срабатывать слайдер на клик, почему?

    sfi0zy
    @sfi0zy Куратор тега CSS
    Creative frontend developer
    Все работает, просто вы полоску сделали слишком маленькой и по ней сложно попасть. Сделайте ее побольше:
    .irs-line {
        /* height: 2px; */
        /* background: #bababa; */
        height: 22px;
        background: 0 0 / 100% 2px linear-gradient(to right, #bababa, #bababa) no-repeat;
    }
    Ответ написан
    Комментировать
  • Как сверстать такую фичу?

    sfi0zy
    @sfi0zy Куратор тега CSS
    Creative frontend developer
    В данном конкретном случае, поскольку текст в таких элементах не меняется, можно сделать все по-простому:
    Lorem ipsum dolor sit...
    <div class='or-line'>или</div>
    Lorem ipsum sit amet...

    .or-line {
        text-align: center;
        background: center / 3em 100% no-repeat linear-gradient(to right, #fff, #fff),
            center / 100% 2px no-repeat linear-gradient(to right, #ccc, #ccc);
    }
    Ответ написан
    Комментировать
  • Как в details сделать свою стрелочку?

    sfi0zy
    @sfi0zy Куратор тега CSS
    Creative frontend developer
    Можно скрыть тот маркер, который есть, а вместо него использовать псевдоэлементы у summary, как-то так:
    summary {
      list-style: none;
    }
    
    summary::-webkit-details-marker {
        display: none;
    }
    
    details summary::before {
        content: ' ';
        display: inline-block;
        background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2l............);
        height: .8em;
        width: .8em;
        background-size: .8em .8em;
    }
    
    details[open] summary::before {
        transform: rotate(90deg);
    }

    Но не забывайте, что IE и Edge эти теги совсем не поддерживают.
    Ответ написан
    Комментировать
  • Как добавить свою карту на сайт с инверсией цветов?

    sfi0zy
    @sfi0zy Куратор тега JavaScript
    Creative frontend developer
    По сути нужно применить фильтр к канвасу, который там спрятан среди элементов карты. Так что если взять разметку вроде:
    <div class='my-super-map'>
        <script type="text/javascript" charset="utf-8" async src="https://api-maps.yandex.ru/services/constructor/1.0/js/?um=constructor%3A07be0313631167b7c9034cf92574b147daa12b122f3d938bc90aa67df29c81ac&amp;width=600&amp;height=449&amp;lang=ru_RU&amp;scroll=true"></script>
    </div>

    то останется только добавить:
    .my-super-map canvas {
        filter: invert(100%);
    }

    Не то, чтобы это было красивым решением, но оно работает.
    Ответ написан
  • Реальные задачи JS?

    sfi0zy
    @sfi0zy Куратор тега JavaScript
    Creative frontend developer
    Хотелось бы более приближенные к реальной жизни.

    toster.ru/tag/javascript/questions
    Ответ написан
    Комментировать
  • Как стащить такой эффект анимации?

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

    sfi0zy
    @sfi0zy Куратор тега JavaScript
    Creative frontend developer
    Вы можете в графическом редакторе переместить и масштабировать всю свою карту в SVG так, чтобы она была грубо говоря не от 0 до 100 (или какая она у вас там) по горизонтали, а от 19 до 169 (вроде бы, не силен в географии). И по вертикали так же подвинуть. И исходить из соображений, что координаты X/Y в SVG буквально равны нашим обычным координатам по широте и долготе. На восток и север - в плюс, на запад и юг - в минус. А перемещение на экране и масштабирование можно сделать с помощью атрибута viewbox, меняя его по ходу дела. Если вы руками рисуете, то таким образом можно получить точность в 1/4 градуса без умственных усилий, просто представив циферблат (0'/15'/30'/45' -> 0/.25/.50/.75), так что думаю, что для ваших задач, где точность не столь важна, это вполне подойдет.
    Ответ написан
    2 комментария
  • Как зарезервировать место для отзывчивого изображения?

    sfi0zy
    @sfi0zy Куратор тега CSS
    Creative frontend developer
    Делать временные заглушки/плейсхолдеры (называйте как хотите) для картинок с теми же пропорциями. Удобно для этих целей использовать SVG - если сервер знает размер картинки, то можно сгенерировать прямоугольник и вставить SVG с ним в то место, где должна быть картинка, а потом саму картинку абсолютным позиционированием положить на нее сверху. Имеет смысл эти заглушки генерировать заранее (один раз) для загружаемых на сервер картинок. В некоторых случаях можно еще сильнее заморочиться и сделать все не только функционально, но и красиво.
    Ответ написан
    Комментировать
  • Почему получаю ошибку?

    sfi0zy
    @sfi0zy Куратор тега JavaScript
    Creative frontend developer
    Потому, что for...in перебирает не совсем то, что вы ожидаете. В вашем случае будет удобнее использовать какой-нибудь другой вариант цикла - тот же for...of к примеру.
    Ответ написан
    Комментировать